【Python3】集合

集合是一个无序的,不重复的数据组合,它的主要作用如下:

  • 去重,把一个列表变成集合,就自动去重了
  • 关系测试,测试两组数据之前的交集、差集、并集等关系

常用操作

set()函数创建

  • s = set([3,5,9,10])      #用set()函数创建一个数值集合,type()函数测试数据类型
  • t = set("Hello")         #创建一个唯一字符的集合 

交并差关系运算

  • a = t | s           # t 和 s的并集 
  • b = t & s         # t 和 s的交集   
  • c = t – s          # 差集(项在t中,但不在s中) 
  • d = t ^ s          # 对称差集(项在t或s中,但不会同时出现在二者中)  

基本操作:   

  • t.add('x')       # 添加一项   
  • s.update([10,37,42])    #添加多项      
  • t.remove('H')   #删除一项,若‘H’不存在会报错
  • len(s)    #长度
  • x in s    #测试 x 是否是 s 的成员,和列表、字典、字符串一样
  • x not in s   #测试 x 是否不是 s 的成员   
  • s.issubset(t)   # s <= t,测试是否 s 中的每一个元素都在 t 中,子集
  • s.issuperset(t)   # s >= t,测试是否 t 中的每一个元素都在 s 中,父级
  • s.union(t)    # s | t,返回一个新的 set 包含 s 和 t 中的每一个元素,并集
  • s.intersection(t)  # s & t,返回一个新的 set 包含 s 和 t 中的公共元素,交集
  • s.difference(t)  # s - t,返回一个新的 set 包含 s 中有但是 t 中没有的元素,差集
  • s.symmetric_difference(t)   # s ^ t,返回一个新的 set 包含 s 和 t 中不重复的元素,对称差集
  • s.isdisjoint(t)   #是否无交集
  • s.pop()  #随机删除,并返回
  • s.discard(‘H’)  #删除一项,若‘H’不存在不会报错
  • s.copy()   #返回“s”的一个浅复制
原文地址:https://www.cnblogs.com/shengxinjack/p/7729754.html