比较Python中的列表

Joe*_*Joe 3 python

说我有list1 = [1,2,3,4]list2 = [5,6,7,8].我如何比较的第一要素,1list1与第一要素,5list2?并26,37,等等.

我正在尝试使用for循环,但我不知道该怎么做.我知道for x in list1只是检查一个元素x到list1中的所有元素,但我不知道如何按照我描述的方式比较两个列表.

Hea*_*ink 8

您可以使用zip同时遍历两个列表:

for (x, y) in zip(list1, list2): do_something
Run Code Online (Sandbox Code Playgroud)

'zip'函数为您提供[(1,5), (2,6), (3,7), (4,8)],因此在循环迭代N中,您将获得每个列表的第N个元素.


Sin*_*ion 5

默认比较运算符按字典顺序比较列表.所以你可以这样说:

>>> [1, 2, 3, 4] < [5, 6, 7, 8]
True
Run Code Online (Sandbox Code Playgroud)

如果您想要计算元素比较,您可以使用mapcmp(或任何其他运算符:

>>> map(cmp, [1, 2, 3, 4], [5, 6, 7, 8])
[-1, -1, -1, -1]
Run Code Online (Sandbox Code Playgroud)