2016-04-30 65 views
-2

我有同样大小的字符串的以下两个列表:找到位置,两个列表的成员不同

l1 = ['foo', 'foo','bar','cho'] 
l2 = ['foo', 'qux','bar','cxx'] 
       *   * 

我想要做的就是寻找到成员的不同产生的位置, :

1, 3 

我们该怎么做?

+6

那你试试这么远吗? –

回答

1

您可以使用列表理解:

>>> [i for i, v1 in enumerate(l1) if v1 != l2[i]] 
[1, 3] 

这将遍历第一个列表,和值与第二列表进行比较,并柜面他们不匹配,增加了指数的结果。

1

当在同样大小的2所列出迭代,使用zip

diff = [i for i, (x, y) in enumerate(zip(l1, l2)) if x != y] 
相关问题