在 Python 中,给定以下上下文的语句的语法是什么:
words = 'blue yellow'
将是一个 if 语句,用于检查
words
是否包含单词“blue”?即,
if words ??? 'blue':
print 'yes'
elif words ??? 'blue':
print 'no'
在英语中,“如果单词包含蓝色,则说是。否则,打印“否”。”
words = 'blue yellow'
if 'blue' in words:
print 'yes'
else:
print 'no'
此外,
nightly blues
将包含 blue
,但不是整个单词。如果这不是您想要的,请拆分单词列表:
if 'blue' in words.split():
…
您可以使用
in
或进行显式检查:
if 'blue ' in words:
print 'yes'
或
if words.startswith('blue '):
print 'yes'
编辑: 仅当句子不以“blue”结尾时,这两个才有效。 要检查这一点,您可以按照之前的答案之一的建议进行操作
if 'blue' in words.split():
print 'yes'
您还可以使用
regex
:
仅当\bblue\b
能够找到确切的单词True
时,才会返回'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
最简单的方法可能如下:
words = set('blue yellow'.split())
if 'blue' in words:
print 'yes'
else:
print 'no'
如果您的单词列表确实很大,则可以通过将
words.split()
包装在 set
中来提高速度,因为测试集成员资格比测试列表成员资格在计算上更高效。