我正在用Python构建一个“拼字游戏”。基本上,给用户7个随机生成的字母,这些字母存储在列表random_letters
中。然后他们用这些字母输入一个单词-这是一个存储为player1_word
的字符串。你知道吗
我要强调的是,我需要验证用户是否输入了有效的单词-例如,isplayer1_word
仅使用来自random_letters
的字母。你知道吗
def is_valid_answer(player_word: str, letters: list) -> bool:
...
预期行为:
>>> random_letters = ["D", "O", "G", "P", "X", "K"]
>>> is_valid_answer("DOG", random_letters)
True
>>> is_valid_answer("CAT", random_letters)
False
您可以使用
set
操作来执行此操作:set
是只包含唯一项的数据结构。我们的想法是,把它们都转换成一组。然后,从Player1Word
中减去randomLetters
,看看Player1Word
是否包含randomLetters
中没有的内容。如果不包含,则Player1Word
有效,否则无效。你知道吗结果
Python does not have a native multiset type因此没有一个完整的线性表达式,但是^{} 有一点帮助:
使用
Counter
至少可以节省使用计数填充普通dict
所需的循环。你知道吗相关问题 更多 >
编程相关推荐