将列表中的每个变量与另一个列表中的每个变量进行比较

时间:2016-05-02 00:35:49

标签: python-2.7 function loops pandas

有没有办法将列表中的每个变量与python上另一个列表中的每个变量进行比较。如果没有使用循环或函数写出来,我已经尝试了两种并且没有任何运气就寻找不同类型的函数,但我还是很陌生。

a = [1,4,6,2,9]
b = [3,7,12,8,10,35]

1>3,1>7,1>12 etc.. 4>3,4>7,4>12 etc... 

依此类推第四名。但不必像那样写出来。

我只是好奇。谢谢你的时间。

1 个答案:

答案 0 :(得分:2)

This会为您提供所有配对:

import itertools
itertools.product(a, b)

这是一个生成器,所以你可以将list()放在它周围并得到它:

[(1, 3),
 (1, 7),
 (1, 12),
 (1, 8),
 (1, 10),
 (1, 35),
 (4, 3),
 (4, 7),
 ...

然后你可以通过operator.gt提供它来获得布尔结果:

import operator
itertools.starmap(operator.gt, itertools.product(a, b))

将其放入list(),你有:

[True,
 True,
 True,
 True,
 True,
 True,
 False,
 True,
 ...