我需要检查组成给定单词的所有字母是否都包含在给定的字符串中。我尝试了一些东西,但不起作用:
def check(texto, control):
for letra in control:
if texto.find(letra) == control.find(letra):
return control + " is not here"
else:
return control + " is here!"
print check('jshdgfyrgj', 'Correo')
应该返回“科雷奥不在这里”
print check('cfgotyrrtepo', 'Correo')
应该返回“科雷奥来了!”你知道吗
它目前返回科雷奥在这里的所有情况。我的代码怎么了? 谢谢!你知道吗
为什么不这样做:
这样可以确保重复的字母也在texto中重复。你知道吗
例如
有几个问题-第一,您希望函数忽略大小写差异,但不要告诉它这样做。-“c”不是“c”。你知道吗
要检查字母是否在字符串中,最好使用
letter in text_string
而不是str.find()
方法。确保您了解find返回的内容-查看docs。你知道吗在下面的例子中,我使用
letter in set(text_string)
——如果有重复的话,这只检查一次text_string
的字母。对于小字符串,这不会对性能造成太大影响。你知道吗可以使用
all
函数执行一系列布尔检查。你知道吗如果顺序无关紧要:
如果顺序很重要:
相关问题 更多 >
编程相关推荐