确定字符串是否包含单词

Joh*_*ith 4 python if-statement

在Python中,给定以下上下文的语句的语法是什么:

words = 'blue yellow'
Run Code Online (Sandbox Code Playgroud)

将是一个if语句,检查是否words包含单词"blue"?也就是说,

if words ??? 'blue':
    print 'yes'
elif words ??? 'blue':
    print 'no'
Run Code Online (Sandbox Code Playgroud)

在英语中,"如果单词包含蓝色,则说是.否则,打印否."

sle*_*ica 8

words = 'blue yellow'

if 'blue' in words:
    print 'yes'
else:
    print 'no'
Run Code Online (Sandbox Code Playgroud)

编辑

我只是意识到这nightly blues将包含blue但不是一个整体.如果这不是您想要的,请拆分wordlist:

if 'blue' in words.split():
    …
Run Code Online (Sandbox Code Playgroud)

  • 每晚蓝调+1 (3认同)

Kar*_*tik 5

您可以使用in或进行显式检查:

if 'blue ' in words:
    print 'yes'
Run Code Online (Sandbox Code Playgroud)

或者

if words.startswith('blue '):
    print 'yes'
Run Code Online (Sandbox Code Playgroud)

编辑:只有当句子不以“蓝色”结尾时,这两个才有效。要检查这一点,您可以按照之前的答案之一进行操作

if 'blue' in words.split():
    print 'yes'
Run Code Online (Sandbox Code Playgroud)


Ash*_*ary 5

您还可以使用regex:

\bblue\bTrue只有在能找到确切的单词时才会返回'blue',否则返回False.

In [24]: import re

In [25]: strs='blue yellow'

In [26]: bool(re.search(r'\bblue\b',strs))
Out[26]: True

In [27]: strs="nightly blues"

In [28]: bool(re.search(r'\bblue\b',strs))
Out[28]: False
Run Code Online (Sandbox Code Playgroud)