[英]Comparing elements in two lists
我有兩個lists
。 說一個是[6,4,2,1]
,另一個是[1,3,5,7]
。 我需要比較各個位置的元素(第一個列表的第一個元素與第二個列表的第一個元素進行比較)。 我需要第三個list
,它可以告訴第一個列表中有多少個元素大於第二個列表中的元素。例如,當比較以上兩個列表時,第三個列表應類似於[2]
(因為6 > 1
和4 > 3
)。 我怎樣才能做到這一點
您可以使用zip(..)
和一個generator來做到這一點:
list3 = [sum(x > y for x,y in zip(list1,list2))]
sum(..)
對元素求和,由於int(True)
為1
且int(False)
為0
,因此它計算對x,y
的對x,y
其中x > y
。
您可以通過使用列表理解來提高性能:
list3 = [sum([x > y for x,y in zip(list1,list2)])]
但是我真的不明白為什么要構造一個列表,一個簡單的整數就足夠了。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.