1
我在相关问题上阅读了很多问题,但他们都没有回答我的问题。我有两个列表:在Python中比较两个列表的项目
List A = ['nike', 'adidas', 'reebok']
List B = ['sneakers', 'sneaker shoes', 'adidas shoes', 'nike', 'any shoe', 'all nikes', 'a nike shoe']
现在,我想看看B中的某处存在表A的项目,使其返回:
List result: [False, False, True, True, False, True, True]
真正代表列表B中的实例,其中一个A的项目被匹配。到目前为止,我已经使用了这个代码,这看起来非常低效。
for j in range(len(lista)):
for k in b:
if j in k:
lista[j] = 'DELETE'
cuent = lista.count('DELETE')
for i in range(cuent):
lista.remove('DELETE')
在此先感谢和抱歉,如果确有一个答案 - 一个小时后,我已经失去了在计算器宇宙:)
编辑找到它的希望:对不起,不使我自己清楚 - 我不是在寻找完全匹配,我正在寻找词组匹配。再次抱歉!
这是完美的 - 我还不熟悉这个很短的“(关键字中的关键字在关键字中的关键字)” - 表达式 - 你知道我可以在哪里了解更多?谢谢! – oliver13 2013-04-30 09:04:40
@ oliver13查看[文档中的列表解析](http://docs.python.org/2/tutorial/datastructures.html#list-comprehensions) – TerryA 2013-04-30 09:06:22
@ oliver13:这被称为“生成器表达式”。见例如http://stackoverflow.com/q/1756096/989121解释。 – georg 2013-04-30 09:07:34