摘要:本文主要介绍了集合的概念和基本操作。
1、集合的基本知识
- 可以用{ }和set()两种方式创建
- 无序
- 不重复
1 # 1. 创建有数据的集合 2 s1 = {10, 20, 30, 40, 50} 3 print(s1) 4 5 s2 = {10, 30, 20, 40, 30, 20} 6 print(s2) 7 8 s3 = set('abcdefg') 9 print(s3) 10 11 # 2. 创建空集合: set() 12 s4 = set() 13 print(s4) 14 print(type(s4)) 15 16 s5 = {} 17 print(type(s5))
执行结果如下:
1 {40, 10, 50, 20, 30} 2 {40, 10, 20, 30} 3 {'g', 'f', 'd', 'a', 'e', 'c', 'b'} 4 set() 5 <class 'set'> 6 <class 'dict'>
2、数据增加
主要借助 add()和update()
1 s1 = {10, 20} 2 # 1. 集合是可变类型 3 # add() 增加单一数据 4 s1.add(100) 5 print(s1) 6 7 # 集合有去重功能,如果追加的数据是集合已有数据,则什么事情都不做 8 s1.add(100) 9 print(s1) 10 11 # s1.add([10, 20, 30]) # 报错 12 # print(s1) 13 14 # update(): 增加的数据是序列 15 s1.update([10, 20, 30, 40, 50]) 16 print(s1) 17 18 # s1.update(100) # 报错 19 # print(s1)
执行结果:
1 {100, 10, 20} 2 {100, 10, 20} 3 {100, 40, 10, 50, 20, 30}
3、数据删除
主要有remove()、pop()、discard()三种操作。
1 s1 = {10, 20, 30, 40, 50} 2 3 # remove(): 删除指定数据,如果数据不存在报错 4 s1.remove(10) 5 print(s1) 6 7 # s1.remove(10) # 报错 8 # print(s1) 9 10 # discard():删除指定数据,如果数据不存在不报错 11 s1.discard(10) 12 print(s1) 13 s1.discard(10) 14 print(s1) 15 16 # pop(): 随机删除某个数据,并返回这个数据 17 del_num = s1.pop() 18 print(del_num) 19 print(s1)
执行结果如下:
1 {40, 50, 20, 30} 2 {40, 50, 20, 30} 3 {40, 50, 20, 30} 4 40 5 {50, 20, 30}
4、数据查找
主要借助 in 和not in来进行操作:
1 s1 = {10, 20, 30, 40, 50} 2 3 # in 或not in 判断数据10是否存在 4 print(10 in s1) 5 6 print(10 not in s1)
执行结果如下:
1 True 2 False