在python3.7.1对列表的处理中,会经常使用到Python求两个list的差集、交集与并集的方法。
下面就以实例形式对此加以分析。
# 求两个list的差集、并集与交集 # 一.两个list差集 # # 如有下面两个数组: a = [1, 2, 3] b = [2, 3] # 想要的结果是[1] # # 下面记录一下三种实现方式: # # 1. 正常的方式 # ret = [] # for i in a: # if i not in b: # ret.append(i) # # print(ret) # 2.简化版 # ret = [i for i in a if i not in b] # print(ret) # 3.高级版 # ret = list(set(a) ^ set(b)) # print(ret) # 4.最终版 # result = list(set(a).difference(set(b))) # a中有而b中没有的 不建议使用
# result2 = list(set(b).difference(set(a))) # b中有而a中没有的 不建议使用
# print(result) 输出结果为[1]
# print(result2) 输出结果为[]
# 二.两个list并集 result = list(set(a).union(set(b))) print(result) # 三.两个list交集 result = list(set(a).intersection(set(b))) print(result)