python - 如何查找密码是否包含列表中的所有字符?

标签 python string list function

我一直在努力解决这个问题,因为它是构建 Hangman 游戏的一部分。

我的问题是我需要编写一个代码来检查是否所有列表项都在密码中。如果所有都在列表中,它将返回 True,否则返回 False。

这是我完成的工作:

def isWordGuessed(secretWord, lettersGuessed):
    a_list = []
    for i in range(0, len(lettersGuessed)):

        a_list.append(lettersGuessed[i])
    str1 = ''.join(a_list)
    if str1 in secretWord:
        return 1
    else:
        return 0

isWordGuessed('apple', ['e', 'i', 'k', 'p', 'r', 's'])

但是,我已经尝试这样做了:

isWordGuessed('苹果', ['a', 'p', 'l', 'p', 'e'])

它返回 False,即使列表中的所有字母都在 'apple' 中

我想我可以在不制作字符串的情况下解决这个问题,但我不知道如何做。顺便说一句,这必须适用于给定的任何单词和列表。如果所有列表项都在一个单词中,则为 true,否则为 false...有帮助吗?

最佳答案

我会将密字和已经猜到的字母都转换为集合,并检查密字的字符集是否是已猜字符集的子集:

def isWordGuessed(secretWord, lettersGuessed):
    return set(secretWord) <= set(lettersGuessed)

关于python - 如何查找密码是否包含列表中的所有字符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12971474/

相关文章:

java - 字符串比较 - Android

c - 字符串代替c中的int

c++ - list::size() 真的是 O(n) 吗?

r - 在使用 ldpy 将数据帧列表合并为一个之前/之后向数据帧的每一行添加标识符

python - 如何使用 OpenCV 处理的图像将小图像粘贴到 python 中心的另一个大图像上?

python - keras 规范化轴参数有什么作用?

c++ - 快速字符串搜索?

Python 子进程在 Windows 上乱序运行

python - 在pandas中使用plot.scatter时如何删除标记的轮廓/更改标记样式

css - 如何使用列表样式类型的小数但没有点