2016-05-02 82 views
0

有沒有辦法將列表中的每個變量與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... 

等等第四。但不必像這樣寫出來。

我只是好奇。謝謝你的時間。

回答

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)) 

Put那變成一個list(),你有:

[True, 
True, 
True, 
True, 
True, 
True, 
False, 
True, 
... 
相關問題