Python比较列表

Ale*_*bec 7 python compare list

我想比较两个列表,并想知道一个元素是否与另一个元素相对应.

例如:'a'应该对应于'b',它将返回True.

list1 = [a,b,c,d]
list2 = [b,a,d,c]
Run Code Online (Sandbox Code Playgroud)

'a'和'b'彼此对应(它们在列表上共享相同的位置).如果它们对应,如何使函数返回True?

list1 = [a,b,c,d]
list2 = [c,d,a,b]
Run Code Online (Sandbox Code Playgroud)

这将返回False.

ars*_*jii 11

我会这样做:

>>> from operator import eq
>>> list1 = ['a','b','c','d']
>>> list2 = ['c','d','a','b']
>>> any(map(eq, list1, list2))
False
Run Code Online (Sandbox Code Playgroud)

当然,如果你想要完整的布尔'对应'列表,你可以简单地省略该any函数:

>>> map(eq, list1, list2)
[False, False, False, False]
Run Code Online (Sandbox Code Playgroud)