Python 在两个不同长度的列表之间查找所有匹配项的索引
我试图找到两个不同长度的列表之间所有匹配项的索引 我创建了一个列表来比较这两个列表:Python 在两个不同长度的列表之间查找所有匹配项的索引,python,list,indexing,find,Python,List,Indexing,Find,我试图找到两个不同长度的列表之间所有匹配项的索引 我创建了一个列表来比较这两个列表: my_list=[“a123”、“b456”、“c234”、“a134”、“d567”、“e789”、“c278”] 匹配字符串=[“a1”,“c2”] mod_list=[i代表我的_列表中的i(如果有的话)([j代表匹配中的j])这是因为您的代码在索引中的i上迭代!您需要将其更改为x并删除x=: >>> list_idx = [i for i, x in enumerate(my_lis
my_list=[“a123”、“b456”、“c234”、“a134”、“d567”、“e789”、“c278”]
匹配字符串=[“a1”,“c2”]
mod_list=[i代表我的_列表中的i(如果有的话)([j代表匹配中的j])
这是因为您的代码在索引中的i
上迭代!您需要将其更改为x
并删除x=
:
>>> list_idx = [i for i, x in enumerate(my_list) if x == any([j in i for j in match_str])]
^
将其更改为:
>>> list_idx = [i for i, x in enumerate(my_list) if any([j in x for j in match_str])]
>>> list_idx
[0, 2, 3, 6]