Set集合 - 图1
集合(set)是一个元素无序,不重复的序列,常用来对两个列表进行交并差的处理性。集合与列表一样,支持所有数据类型。
集合与列表的区别:

功能 列表 集合
顺序 有序 无序
内容 可重复 不可重复
功能 用于数据的使用 用于数据的交并补
索引 有索引 无索引(无序导致的)
符号 [ ] { }

重要说明:

  • 集合无法通过索引获取元素
  • 集合无法获取元素的任何方法
  • 集合不适合存储和传输

    1. 创建集合

    1.1 使用“{}”创建

    **setname = {element1 , element2 , ... , elementn}**

  • 此方法不能创建空集合。在python中,{ }用于创建空字典。

  • 此方法不能将字典,列表等容器类型中的元素转变为集合元素。

    1.2 使用set()函数创建

    **setname = set(iteration)**
    iteration:表示要转换为集合的可迭代对象,可以是字符串、列表、元组、range对象等。
    注意:创建空集合只能使用set()实现

    2. 向集合中添加和删除元素

    2.1 添加元素

    **setname.add(element)**——>将element添加到setname集合中

  • element不能是列表、元组等可迭代对象。

    2.2 删除元素

    | **del setname** | 删除整个集合 | | —- | —- | | **setname.pop(index)** | 删除一个元素。若index未指定,则删除最后一个元素 | | **setname.remove(element)** | 删除一个元素。使用remove()方法时如果指定元素不存在则会抛出异常 | | **setname.clear()** | 删除集合中的全部元素,使其变为空集合。 |

2.3 修改集合

**setname.update(iterable)**——>将iterable添加到setname集合中,无返回值,直接作用于原集合,iterable可以是字符串,列表,元组,列表集合。

2.4 判断两个集合是否拥有相同的元素

**set1.isdisjoint(set2)**——>返回False或者True

3. 集合的交集、并集和差集运算

  • 进行交集运算时使用“&”符号;
  • 进行并集运算时使用“|”符号;
  • 进行差集运算时使用“-”符号,
  • 进行对称差集运算时使用“^”符号