在Python中检查字符串中的单词

在Python中检查字符串中的单词,python,Python,我在这里举了一些例子,完全按照我的要求去做,但我不太确定我做错了什么 基本上,我想知道给定的字符串是否包含单词列表中的任何单词 st = "hello this is a string" ar = ['lo', 'str'] if any(e in st for e in ar): print(True) else: print(False) 然而,我得到了这个输入真实。同样地,当我试着用一些匹配的词时,我得到了错误的答案。我查过的每一个资料都说要用上面所示的方式来做我想做的事情。我

我在这里举了一些例子,完全按照我的要求去做,但我不太确定我做错了什么

基本上,我想知道给定的字符串是否包含单词列表中的任何单词

st = "hello this is a string"
ar = ['lo', 'str']

if any(e in st for e in ar):
  print(True)
else:
  print(False)

然而,我得到了这个输入真实。同样地,当我试着用一些匹配的词时,我得到了错误的答案。我查过的每一个资料都说要用上面所示的方式来做我想做的事情。我好像就是弄不懂它的窍门。任何帮助都将不胜感激

您可以将字符串拆分为单词,并使用列表理解检查是否至少有一个匹配项

words=st.split(' ')
any([a==word for word in words for a in ar])
# False

看起来您需要将字符串拆分为单词,以便使用
any
函数提取存储中的项目。我对python非常陌生,所以我真的很欣赏这种友好和准确的响应!