Python 使用';包括';

Python 使用';包括';,python,list,search,Python,List,Search,我需要您的帮助,我的代码如下: 我有一个序列列表值,我想搜索一个单词,它将返回一个数字,如下所示 search_word = 'cp' keyword_list = [[1, 'ap'], [2, 'cp'], [3, 'mc']] for each_word in keyword_list: if search_word in each_word[1]: print(each_word[0]) 上面的

我需要您的帮助,我的代码如下:

我有一个序列列表值,我想搜索一个单词,它将返回一个数字,如下所示

search_word = 'cp'

keyword_list = [[1, 'ap'],
                [2, 'cp'],
                [3, 'mc']]

for each_word in keyword_list:
    if search_word in each_word[1]:
        print(each_word[0])
上面的代码将打印“2”,这很好,但是当我设置search\u word='from cp'时,它与任何内容都不匹配。任何帮助都将不胜感激

或任何其他替代方法?

交换
中的
\uuuu包含
)测试操作数:

if each_word[1] in search_word:

字典将是一种Python解决方案:

keyword_list = [[1, 'ap'],
                [2, 'cp'],
                [3, 'mc']]

d = {v: k for k, v in keyword_list}

d['cp']  # 2
如果子字符串条件“包含”很重要,您可以将其子类化为dict

keyword_list = [[1, 'apab'],
                [2, 'cpcd'],
                [3, 'mcef']]

class dict_contains(dict):
    def __getitem__(self, value):
        keys = [k for k in self.keys() if k in value]
        key = keys[0] if keys else None
        return self.get(key)

d = dict_contains({v: k for k, v in keyword_list})

d['cpcde']  # 2