1. 集合的创建
创建集合使用{}
或set()
, 但是如果要创建空集合只能使用set()
,因为{}
用来创建空字典。
-
集合的特点:
- 集合可以去掉重复数据;
- 集合数据是无序的,故不支持下标
-
实例:
set1 = {1, 2, 3, 4, 5} print(set1) set2 = {1, 2, 2, 3, 4, 3, 2, 1} print(set2) set3 = set('hello') print(set3) set4 = set() print(type(set4)) set5 = {} print(type(set5)) """ 输出: {1, 2, 3, 4, 5} {1, 2, 3, 4} {'l', 'e', 'h', 'o'} <class 'set'> <class 'dict'> """
2. 集合的常见操作
2.1 增加数据
-
数据增加:集合有去重功能,所以,当向集合内追加的数据是当前集合已有数据的话,则不进行任何操作。
set1 = {1, 2, 3, 4, 5} set1.add(111) set1.add(3) # 相同元素自动去掉 print(set1) """ {1, 2, 3, 4, 5, 111} """
-
update(), 追加的数据是序列。
set1 = {1, 2, 3, 4, 5} set1.update(100) # 会报错,追加数据必须是序列。 set1.update([222,333]) set1.update('hello') """ {'e', 1, 2, 3, 4, 5, 'o', 333, 111, 'l', 'h', 222} """
2.2 删除数据
-
remove(),删除集合中的指定数据,如果数据不存在则报错。
set1 = {1, 2, 3, 4, 5} set1.remove(1) print(set1) set1.remove(100) # 会报错 print(set1)
-
discard(),删除集合中的指定数据,如果数据不存在也不会报错。
set1 = {1, 2, 3, 4, 5} set1.discard(2) print(set1) set1.discard(100) # 数据不存在,不回报错 print(set1)
-
pop(),随机删除集合中的某个数据,并返回这个数据。
set1 = {1, 2, 3, 4, 5} delNum = set1.pop() print(delNum)
2.3 查找数据
-
in:判断数据在集合序列
-
not in:判断数据不在集合序列
set1 = {1, 2, 3, 4, 5} print(1 in set1) # True print(1 not in set1) # False