列表:list_1 = [1,4,5,7,3,6,7,9]list_2 =set([2,6,0,66,22,8,4])list_3 = set([1,3,7])list_4 = set([5,6,7,8])
1、通过set变为集合并去重,集合也是无序的。
list_1 = set(list_1)
通过type查看list_1的类型
print(list_1,type(list_1))
运行结果:
{1, 3, 4, 5, 6, 7, 9}
2、取list1和list2的交集
print( list_1.intersection(list_2) )或者print(list_1 & list_2)
运行结果:
{4, 6}
3、取list1和list2的并集
print(list_1.union(list_2))或者print(list_2 | list_1)
运行结果:
{0, 1, 2, 66, 4, 3, 6, 5, 8, 7, 9, 22}
4、取list1和list2的差集
print(list_1.difference(list_2))、print(list_2.difference(list_1))或者
print(list_1 - list_2)
运行结果:
{1, 3, 5, 7, 9}、{0, 2, 66, 8, 22}
{1, 3, 5, 7, 9}
5、取list1h和list3的子集
#list3是list1的子集:print(list_3.issubset(list_1))
#list1是list3的父集:print(list_1.issuperset(list_3))
运行结果:
True
True
6、对称差集,将两个列表都有的部分去掉
print(list_1.symmetric_difference(list_2))或者print(list_1 ^ list_2)
运行结果:
{0, 1, 2, 66, 3, 5, 7, 8, 9, 22}
集合的增删改查
1、增加
list_1.add(999)#增加一项
list_1.update([888,777,555])#增加多项
print(list_1)
运行结果:
{1, 3, 4, 5, 6, 7, 999, 9, 777, 555, 888}
2、删除
print(list_1.pop())
运行结果:
1
3、删除,不返回结果
list_1.discard(888)
运行结果:
None