我正在为类似于棋盘游戏MasterMind的游戏制作一些练习代码 - 并且它不断出现这个错误,我无法弄清楚它为什么会这样做。这是代码:
def Guess_Almost (Guess, Answer):
a = ''.join([str(v) for v in Answer])
g = str(Guess)
n = 0
am = 0
while n < 5:
if g[n] == a[0]:
am = am + 1
if g[n] == a[2]:
am = am + 1
if g[n] == a[3]:
am = am + 1
if g[n] == a[3]:
am = am + 1
n = n + 1
return(am)
好的,Guess被指定为4个整数,而Answer是一个包含4个数字的列表。在代码之后它们都有相同的'len',所以我没有线索。
这段代码的意思是将Answer变成一个包含4个数字的字符串,看看这些数字中是否有任何一个与猜测相匹配,并返回总共匹配的数量。
答案 0 :(得分:0)
看看这是否有帮助
def Guess_Almost (Guess, Answer):
a = ''.join([str(v) for v in Answer])
g = str(Guess)
n = 0
am = 0
if len(g) >= 5 and len(a) >=4:
while n < 5:
if g[n] == a[0]:
am = am + 1
if g[n] == a[2]:
am = am + 1
if g[n] == a[3]:
am = am + 1
if g[n] == a[3]:
am = am + 1
n = n + 1
return(am)