我有两个列表如下所示:
c = ['John', 'query 989877 forcast', 'Tamm']
isl = ['My name is Anne Query 989877', 'John', 'Tamm Ju']
我希望能够检查
isl
中的每个项目与 c
中的每个项目匹配,以获取所有部分字符串匹配项。
我需要的输出结果如下:out = ["john", "query 989877", "tamm"]
可以看到,我已经得到了部分字符串匹配结果。
我尝试过以下方法:
out = []
for word in c:
for w in isl:
if word.lower() in w.lower():
out.append(word)
但这只会给我输出:
out = ["John", "Tamm"]
我也尝试了以下方法:
print [word for word in c if word.lower() in (e.lower() for e in isl)]
但是现在这个代码只会输出"John",我该怎么做才能得到我想要的结果呢?