[集合特点]
1, 天生去重, 循环
2 关系测试 - 交集, 差集, 并集,(反向差集, 对称差集)
- list = [1,2,3,4,5,3,6}
- list_2 =[2,3,5,7,8]
- list=set(list) #去重, 转集合
- list_2 = set(list_2)
- print(list.intersection(list_2)) #交集, 取出重复数据
- print(list.union(list_2)) # 并集, 去重 - 统一展示
- print(list.difference(list_2)) #差集, 取出 list 中有 list_2 没有
- list_3 = set([1,3,6])
- print(list_3.issubset(list)) #子集 list_3 的值在 list 全有
- print(list.issuperset(list_3)) #父集
- print(list.symmetric_difference(list_2)) # 对称差集 lsit 和 list_3 互相没有的
集合关系的另一种表示方法:
- print(list & list_2) #交集
- print(list | list_2) # 并集
- print(list -list_2) #差集
- print(list ^ list_2) # 对称差集
[集合操作]
增加:
- list.add(777) #一次添加一个
- list.update([888,999]) #同时添加多个
删除:
- list.remove(999) #删除不存在的, 会报错
- list.pop()
- list.discard(888) # 删除一个不存在的 不会报错
集合也是无序的
- nums = {1,2,3,4,5}
- for n in nums:
- print(n)
来源: http://www.bubuko.com/infodetail-2655154.html