编辑:
嗨,早些时候,我以非常冗长的方式发布了这个问题。我是这个网站的新手,不知道发布的习俗。我会再次尝试,并对我的问题更加具体。
我将一些代码移到了测试文件中,这部分会返回错误。似乎我对blackpegs的计数没有增加,因为局部变量'blackpegs'在赋值之前是引用。
blackpegs = 0
def test_guess(code,guess):
for x,y in zip(code,guess):
if x==y:
blackpegs += 1
return blackpegs
首先,这是什么意思?其次,我该如何解决?
答案 0 :(得分:0)
您应该将变量定义移动到函数定义中。我猜你也想要"返回"语句与if语句在同一级别缩进,以便它通过for循环而不是在x == y的第一个实例之后退出。
def test_guess(code,guess):
blackpegs = 0
for x,y in zip(code,guess):
if x==y:
blackpegs += 1
return blackpegs