【发布时间】:2019-07-27 18:54:18
【问题描述】:
我有一个字母列表。
我需要定义一个接受两个参数的函数,第一个是字符串,第二个是字母列表。然后返回一个布尔值,指示字符串中的所有字母是否都在字母列表中。
我尝试了 for 循环,但它只会检查 0 索引而不会检查其他内容。
lettersGuessed = ['a', 'b','c', 'p', 'l', 'e']
def isWordGuessed(str, lettersGuessed):
'''
secretWord: string, the word the user is guessing
lettersGuessed: list, what letters have been guessed so far
returns: boolean, True if all the letters of secretWord are in lettersGuessed;
False otherwise
'''
if all(list(str)) in lettersGuessed:
return True
else:
return False
print(isWordGuessed('bcp', lettersGuessed))
【问题讨论】:
-
字母数量重要吗?
set('reed').issubset('cred')计算结果为True。 -
@DeveshKumarSingh 你能重新打开这个问题吗?在这里使用子集不适用,因为例如如果
secret_word是apple并且letters_guessed是aple应该返回False。我有一个解决我想为 OP 发布的案例的答案。 -
@shash678 但在 OP 的情况下,
lettersGuessed是字母列表,而不是单词列表。 -
我添加了另一个目标。操作也清楚地说
Then return a bool indicating whether all letters in the string are in the list of letters or not.issubset或all会做@shash678
标签: python