Python求两个list的差集

Python求两个list的差集

一.两个list差集

如有下面两个数组:

a = [1,2,3]

b = [2,3]

想要的结果是[1]

下面记录一下三种实现方式:

1. 正常的方式

代码如下

ret = []

for i in a:

if i not in b:

ret.append(i)

2. 浓缩版

代码如下

ret = [ i for i in a if i not in b ]

3. 另一版

代码如下

ret = list(set(a) ^ set(b))

www.111cn.net站长个人更喜欢第三种实现方式

二. 获取两个list 的并集

代码如下

print list(set(a).union(set(b)))

三. 获取两个 list 的差集

代码如下

print list(set(b).difference(set(a))) # b中有而a中没有的