检查元素是否存在于列表中

时间:2014-01-23 16:04:33

标签: python

我有一份清单 喜

w = ['4KUI_YLR242C.pdb', '2CQA_CGI-52.pdb', '4G4S_YFR051C.pdb']


if '4KUI' in w:
    print "got !!"

但是,我无法打印'得到'。我怎么能这样做?

5 个答案:

答案 0 :(得分:5)

这是因为w中没有'4KUI'的元素。肯定有一个以这种方式开始 我想这就是你要找的东西:

w = ['4KUI_YLR242C.pdb', '2CQA_CGI-52.pdb', '4G4S_YFR051C.pdb']
if any(i.startswith("4KUI") for i in w):
    print "got !!"

答案 1 :(得分:0)

你正在比较那里的整个字符串。 你需要做一些像

这样的事情
for string in w:
    if '4kui' in string:
        print "got!!"

答案 2 :(得分:0)

示例

#!/usr/bin/python

entries = ['Glasgow', 'Edinburgh', 'Scotland', 'Dundee']

if [entry for entry in entries if entry.startswith('Dun')]:
        print "Found entry for Dundee"

<强>执行

  

python example.py

答案 3 :(得分:0)

在此上下文中,“in”确定“4KUI”是否是列表中某个元素的值。你想要的是看看列表中的一个元素中是否包含“4KUI”。试试这个:

w = ['4KUI_YLR242C.pdb', '2CQA_CGI-52.pdb', '4G4S_YFR051C.pdb']

for f in w:
  if '4KUI' in f:
    print "got !!"

答案 4 :(得分:0)

w = ['4KUI_YLR242C.pdb', '2CQA_CGI-52.pdb', '4G4S_YFR051C.pdb']

for item in w:
        if "4KUI" in item:
                print "got !!"