我正在研究一个hang子手程序(这是一个家庭作业),这是它告诉玩家他们迄今为止猜到的部分。这里是我的编程:Python应该返回str返回'None'
def getGuessedWord(secretWord, lettersGuessed):
theWord=''
for char in secretWord:
if char not in lettersGuessed:
char='_ '
theWord+=char
elif char in lettersGuessed:
theWord+=char
else:
return theWord
print (getGuessedWord('apple', ['e', 't', 'i', 'p', 'r']
当我问它打印出来theWord
我期待它发出下划线和字母_ pp_ e
的组合,相反,它给了我None
。我无法弄清楚我的问题是我在第2行放置theWord
的位置,还是与第二行的位置相关,或者与其他地方完全不同。
你什么时候期待'else'执行? 'char'有什么值'char not in lettersGuessed'是假的_and_'char in lettersGuessed'是False? – Kevin
这是你的代码吗?它有空白错误。 – doctorlove
你的return语句放错了位置,它应该在for循环之后。 –