python求两个列表的并集.交集.差集

求两个列表的差集

>>> a = [1,2,3]
>>> b=[1,2]
>>> ####################################
>>> #两个列表的差集
>>> ret = []
>>> for i in a:
    if i not in b:
         ret.append(i)

>>> ret
[3]
>>> #两个列表的差集2
>>> ret2 = [ i for i in a if i not in b ]
>>> ret2
[3]
>>> #两个列表的差集3
>>> ret3 = list(set(a) ^ set(b))
>>> ret3
[3]
>>> #两个列表的差集4
>>> ret4=list(set(a).difference(set(b))) #  b中有而a中没有的
>>> ret4
[3]

求两个列表的并集

>>> ########################################
>>> #获取两个list 的并集
>>> ret1=list(set(a).union(set(b)))
>>> ret1
[1, 2, 3]
>>> ret1=list(set(a).union(set([4,5,6])))
>>> ret1
[1, 2, 3, 4, 5, 6]
>>> #获取两个list 的并集2
>>> ret2= list(set(a) | set(b))
>>> ret2
[1, 2, 3]
>>> ret2=list(set(a)-set(b))#####差集
>>> ret2
[3]

求两个列表的交集

>>> ##########################################
>>> #获取两个列表的交集
>>> a = [1, 2, 3, 4, 5, 6]
>>> b = [2, 4, 6, 8 ,10]
>>> ret1= [x for x in b if x in set(a)]   # list a is the larger list b
>>> ret1
[2, 4, 6]
>>> #获取两个列表的交集2
>>> ret2= list(set(a) & set(b))
>>> ret2
[2, 4, 6]
>>> #获取两个列表的交集3
>>> ret3= list(set(a).intersection(b))
>>> ret3
[2, 4, 6]
>>>  #获取两个列表的交集4
>>> ret4 = list((set(a).union(set(b)))^(set(a)^set(b)))
>>> ret4
[2, 4, 6]
>>>

Original: https://www.cnblogs.com/nyist-xsk/p/11868771.html
Author: xushukui
Title: python求两个列表的并集.交集.差集

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/7871/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

发表回复

登录后才能评论
免费咨询
免费咨询
扫码关注
扫码关注
联系站长

站长Johngo!

大数据和算法重度研究者!

持续产出大数据、算法、LeetCode干货,以及业界好资源!

2022012703491714

微信来撩,免费咨询:xiaozhu_tec

分享本页
返回顶部