python兩個(gè)列表取交集 python兩個(gè)列表要怎么匹配數(shù)據(jù)?
python兩個(gè)列表要怎么匹配數(shù)據(jù)?您可以通過(guò)取兩個(gè)列表的交集來(lái)匹配兩個(gè)列表的數(shù)據(jù)。例如:a=[2,3,4,5]B=[2,5,8]TMP=[a中的Val,如果B中的Val]TMP[2,5你好,我是[f
python兩個(gè)列表要怎么匹配數(shù)據(jù)?
您可以通過(guò)取兩個(gè)列表的交集來(lái)匹配兩個(gè)列表的數(shù)據(jù)。例如:
a=[2,3,4,5
]B=[2,5,8
]TMP=[a中的Val,如果B中的Val
]TMP[2,5
你好,我是[fog6688]。我很高興為你回答。
您可以遍歷第二個(gè)列表的元素,以檢查它們是否出現(xiàn)在第二個(gè)列表中。如果使用表來(lái)理解,可以使用一行代碼來(lái)完成任務(wù)。
1234list1=[1,2,3,4,5]List2=[4,5,6,7,8]print[l for l in LIST1 if l in List2];[4,5]如果每個(gè)列表中沒(méi)有重復(fù)的元素,還有其他更好的方法。首先將兩個(gè)列表轉(zhuǎn)化為集合,然后求兩個(gè)集合的交集,得到兩個(gè)列表的重復(fù)元素。
1234set1=set(LIST1)set2=set(List2)print Set1&set 2#{4,5}比較專業(yè)的科普知識(shí),歡迎關(guān)注我。如果你喜歡我的回答,也請(qǐng)給我表?yè)P(yáng)或轉(zhuǎn)發(fā),你的鼓勵(lì)是支持我寫(xiě)下來(lái)的動(dòng)力,謝謝。
python怎么求兩個(gè)列表的交集?
方法1遍歷B1。如果元素也存在于B2中,則返回如下復(fù)制代碼:B1=[1,2,3]B2=[2,3,4]B3=[Val for Val in B1 If Val in B2]print B3。運(yùn)行結(jié)果如下:[2,3]方法2將列表轉(zhuǎn)換為集合,使用集合運(yùn)算符計(jì)算交集,然后將其轉(zhuǎn)換回列表類型。復(fù)制代碼如下:B1=[1,2,3]B2=[2,3,4]B3=list(set(B1)&set(B2))print B3。運(yùn)行結(jié)果如下:復(fù)制代碼如下:[2,3,4],3]在前面的方法3示例中,這兩個(gè)列表是簡(jiǎn)單的單元素列表。另一種特殊情況是嵌套類型的復(fù)制代碼如下:B1=[1,2,3]B2=[[2,4],[3,5
B3=[filter(lambda x:x in B1,sublist)for sublist in B2]print B3。復(fù)制代碼如下:[2,3]