我做了这个hangman程序,但每次我运行它都会出现“nonetype”错误 程序正在运行- 每当我输入一个单词,输出是这样的 吊人游戏 猜猜看 一 ----- 你正确地说出了一个词
-----a---------------
Traceback (most recent call last):
File "F:/coding/python/python programming for absolute beginners/chapter 5/Hang Man Game.py", line 129, in <module>
if guess in used:
TypeError: argument of type 'NoneType' is not iterable
代码:
^{pr2}$
你不能这样做
append
函数返回None
,它在适当的地方修改used
。所以你基本上是在右边加上guess
,然后把None
分配给used
。所以下一次迭代while
循环,您正试图在None
上迭代,这就是错误告诉您的。在你只需要说
^{pr2}$或者
list
的成员函数append
修改了列表,并且不返回任何内容。在在第一次迭代中,}修改,正如您所期望的那样,,然后将
used
是一个空列表,但是当您到达used=used.append(guess)
行时,used
首先被{append
(即None
)的返回值赋给used
。因此,在第二次迭代中,used
是None
。在只需使用
append
为used.append(guess)
更改这两行。在但是,您的代码还有其他问题,其中之一就是您只要求猜测一次(您可以将
guess = raw_input("Guess a word\n")
放入循环中)。在相关问题 更多 >
编程相关推荐