【发布时间】:2020-10-28 07:12:27
【问题描述】:
我正在开发 Cows/Bulls 游戏,我知道该游戏已被回答一千次,但我还没有看到这种特殊方法出现,我对自己做错了什么感到困惑.
我试图让列表的计数在两个列表之间存在但不在同一索引位置的数字每次出现时增加 1。请参见下面的示例。
n = [1,2,3,4]
solution = [0,3,1,0]
bulls = 0
cows = 0
for i in solution:
if i != n[0]:
if i in n:
bulls +=1
print (bulls)
我也试过用下面的方式写这个,但没有成功。
n = [1,2,3,4]
solution = [0,3,1,0]
bulls = [0]
cows = [0]
for i in solution:
if i != n[0] and i in n:
bulls.append(1)
bulls = sum(bulls)
print (bulls)
这两个代码块都返回 1,而它们应该返回 2(1 表示列表中匹配的 1,1 表示匹配的 3)。
感谢任何见解。
【问题讨论】:
标签: python if-statement append