Python常用数据结构-集合Set

集合的定义

  • 无序的唯一对象集合;
  • 用大括号{ }包围,对象相互之间使用逗号分隔;
  • 集合是动态的,可以随时添加或者删除元素;
  • 集合是异构的,可以包含不同类型的数据。

集合的创建

方法一:通过使用{ }填充元素
方法二:通过构造方法set()
方法三:通过集合推导式
示例:
image

成员检测

in:检查一个元素是否在列表中,若在则返回True,否则返回False。
not in:检查一个列表是否不包含某个元素,若不在则返回True,否则返回False。
示例:
image

集合常用方法

1. add()
add(item):将单个对象添加到集合中。
入参:对象item
返回:None
2. update()
update(iterable):批量添加来自可迭代对象中的所有元素。
入参:可迭代对象iterable
返回:None
示例:
image
3. remove()
remove(item):从集合中移除指定元素item。若item不存在于集合中,则引发KeyError报错。
入参:指定元素值
返回:None
示例:
image
4. discard()
discard(item):从集合中移除指定对象item。元素item不存在没影响,不会引发KeyError报错。
入参:指定对象值
返回:None
示例:
image
5. pop()
pop():随机从集合中移除并返回一个元素。若集合为空,则会引发KeyError报错。
入参:无
返回:被移除的元组
示例:
image
image
6. clear()
clear():清空合集,移除所有元素。
入参:无
返回:None
示例:
image

集合运算

1. 交集运算
intersection():操作符 &


2. 并集运算
union():操作符 |

3. 差集运算
difference():操作符 -

示例:
image

集合推导式

类似列表推导式,同样集合支持集合推导式
语法:{x for x in … if …}
示例:
image