[英]How to find same elements in exact same positions in Python?
我試圖在 python 的 2 個列表中的相同位置找到相同的元素。 我試過在互聯網上搜索,但仍然沒有找到任何東西。 a = [1,2,3,4,5] b = [10,2,4,3,5]
例如,這里的 2 和 5 是兩個列表中相同位置的相同元素。
有沒有辦法在python中編寫這個函數的腳本?
你可以試試zip
a = [1,2,3,4,5]
b = [10,2,4,3,5]
list(filter(lambda e: e[0]==e[1], zip(a,b))) #[(2, 2), (5, 5)]
使用列表理解和zip
您可以簡單地檢查兩個元素是否相等。
a = [1,2,3,4,5]
b = [10,2,4,3,5]
print([x for x, y in zip(a, b) if x==y])
輸出:
[2, 5]
您可以使用二進制異或:
a = [1, 2, 3, 4, 5]
b = [10, 2, 4, 3, 5]
print([i for i, j in zip(a, b) if i ^ j == 0])
您可以使用列表理解為等式創建布爾值列表。
>>> a = [1,2,3,4,5]; b = [10,2,4,3,5]
>>> [i==j for i,j in zip(a,b)]
[False, True, False, False, True]
如果你想要價值觀,而不是真實的價值,你可以擁有理解的價值。
>>>[i for i,j in zip(a,b) if i==j]
[2, 5]
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.