我正在尝试在[]列表中的单词列表中找到单词的完全匹配,或者从由每行单词分隔的文本文档中的列表中找到完全匹配。但是如果单词包含在单词列表中,则使用“in”将返回true。我正在寻找完全匹配。例如在python 2.7.12中:
mylist = ['cathrine', 'joey', 'bobby', 'fredrick']
for names in mylist:
if 'cat' in names:
print 'Yes it is in list'
这将返回true,但我希望它只有在完全匹配时才是真的。如果'cathrine'在mylist中,'cat'不应该返回true。
并尝试使用“if'cat'== names:'似乎不起作用。
如果我正在寻找的字符串与单词列表完全匹配,并且不包含在单词列表中的单词中,我将如何返回true?
答案 0 :(得分:1)
您可以直接在列表中使用in
。
<强>实施例强>
mylist = ['cathrine', 'joey', 'bobby', 'fredrick']
if 'cat' in mylist:
print 'Yes it is in list'
#Empty
if 'joey' in mylist:
print 'Yes it is in list'
#Yes it is in list
答案 1 :(得分:0)
您可以将in
与if else
条件运算符
In [43]: mylist = ['cathrine', 'joey', 'bobby', 'fredrick']
In [44]: 'yes in list ' if 'cat' in mylist else 'not in list'
Out[44]: 'not in list'
答案 2 :(得分:0)
@Rakesh已经给出了归档你任务的答案,这只是为了纠正你的陈述。
trying to use "if 'cat' == names:' does't seem to work
实际上'cat' == names
这会返回false
这个东西是你错过了抓住那个的其他部分
mylist = ['cathrine', 'joey', 'bobby', 'fredrick']
for names in mylist:
if 'cat' == names:
print ('Yes it is in list')
else:
print('not in list')
答案 3 :(得分:0)
您可以使用&#39; ==&#39;而不是&#39;
mylist = [&#39; cathrine&#39;,&#39; joey&#39;,&#39; bobby&#39;,&#39; fredrick&#39;]
表示mylist中的名称: 如果名字==&#39; cat&#39; : 打印(&#39;匹配&#39;) 其他: 打印(&#39;未匹配&#39;)
我认为它会起作用!