编写一个函数 isAllLettersUsed(word, required),它接受一个单词作为第一个参数,如果该单词包含在第二个参数中找到的所有字母,则返回 True。
示例
>>> isAllLettersUsed('apple', 'apple')
True
>>> isAllLettersUsed('apple', 'google')
False
>>> isAllLettersUsed('learning python', 'google')
True
>>> isAllLettersUsed('learning python', 'apple')
True
我正在做的是
def isAllLettersUsed(word, required):
if all(required in word for required in word):
return True
else:
return False
返回的结果是
True
True
True
True
它应该返回的位置
True
False
True
True
我不明白在这一点上我应该做什么我已经尝试了很多但都失败了。有什么建议吗??
请您参考如下方法:
只看需要的所有字母是否在单词中:
def isAllLettersUsed(word, required):
return all(ch in word for ch in required)
您正在通过在 for 循环中使用 required 检查 word 中的每个字母是否在 word 中,required 是指每个字符而不是传递的必需参数,因此它始终返回 True,因为 word 中的每个字母都必须在单词中。
