布尔迷你Python程序来玩刽子手



我正在尝试创建一个程序来扮演刽子手,它被分成了多个小块。如果秘密单词的字母在猜测的字母中,则此特定块应返回"True",如果秘密单词的至少一个字母不在猜测的字母中,则返回 false。我不知道我做错了什么,因为我的代码没有始终如一地给出正确的答案。感谢您的帮助!

def isWordGuessed(secretWord, lettersGuessed):
for letter in secretWord:
if letter not in lettersGuessed:
return False
else:
return True

目前您的循环在lettersGuessed中的第一个letter返回True。在返回True之前,您需要遍历所有字母,例如:

def isWordGuessed(secretWord, lettersGuessed):
for letter in secretWord:
if letter not in lettersGuessed:
return False
else:
return True

在这种特殊情况下,您不需要for循环上的else:子句,因为这等效于:

def isWordGuessed(secretWord, lettersGuessed):
for letter in secretWord:
if letter not in lettersGuessed:
return False
return True

或者您可以使用all()功能:

def isWordGuessed(secretWord, lettersGuessed):
return all(letter in lettersGuessed for letter in secretWord)

最新更新