Python中两个list元素对比

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/muumian123/article/details/81979084

set是一个无序不重复元素集,Python数据类型的一种,由于是无序的,不能通过索引和切片来做一些操作。主要有添加、删除、交集、并集、差集、对称差集 五种操作。

1. 添加

a=set([1,2,3])
#方法1:添加1项
a.add(4)
#方法2:添加多项,update中的参数必须是迭代器
a.update([4,5,6])

2. 删除

a.remove(1)    #如果删除不存在的元素,产生KeyError
a.discard(2)   #如果存在元素2,则删除
c=a.pop()      #删除一个不确定的元素,并且赋给c,如果集合a为空则产生 KeyError
a.clear()      #删除集合中所有元素

3. 交、并、差、对称差

a=set(range(1,11))             # a为[1,2,3,4,5,6,7,8,9,10]
b=set(range(0,10,2))           # b为10以内的偶数列[0,2,4,6,8]
"""
=====================方法一:运算符版本=========================
"""
union=list(a|b)                # 并               
inter=list(a&b)                # 交 
diff=list(a-b)                 # 差
sys_diff=list(a^b)             # 对称差
"""
=====================方法二:非运算符版本======================
"""
tmp1=list(a.union(b))                   # 并
tmp2=list(a.intersection(b))            # 交
tmp3=list(a.difference(b))              # 差
tmp4=list(a.symmetric_difference(b))    # 对称差

print(tmp1)               # 输出集合的并:0,1,2,3,4,5,6,7,8,9,10
print(tmp2)               # 输出集合的交:2,4,6,8
print(tmp3)               # 输出集合的差:1,3,5,7,9,10 
print(tmp4)               # 输出对称差集:0,1,3,5,7,9,10

 

阅读更多
换一批

没有更多推荐了,返回首页