Python基础篇(八)
前言
不知不觉已经写了8篇了,不知读者有没有想跟作者说点悄悄话呢,那么请下方评论留言哈哈哈,我一定会关注你的~
一、集合
说明:字典和集合都可以使用 {} 定义,但是 Python 解释器会根据 {} 中的元素来判断。
1.1 创建集合
# 注意: 如果要创建空集合只能使用 set() ,因为 {} 用来创建空字典
s1 = {
10,20,30}
print(type(s1)) # 结果为 <class 'set'>
s2 = set()
print(type(s2)) # 结果为 <class 'set'>
d1 = {
'name': '张三'}
print(type(d1)) # 结果为 <class 'dict'>
d2 = {
}
print(type(d2)) # 结果为 <class 'dict'>
# 集合会自动去除重复数据,数据是无序的,所以也不能通过下标获取集合中的元素
s2 = {
10,20,10,30}
l1 = [10,20,10,30]
t1 = (10,20,10,30)
print(s2) # {10, 20, 30}
print(l1) # [10, 20, 10, 30]
print(t1) # (10, 20, 10, 30)
# 通过下标获取集合中的元素
print(s2[0]) # 结果为报错 'set' object is not subscriptable
1.2 增加数据
- add(): 添加指定元素到集合中
# 注意: 因为集合有去重功能,所以,当集合追加的元素,原集合已有,那么不进行任何操作。
# 举例
s3 = {
'a','b','c'}
s3.add('d')
print(s3) # 结果为 {'b', 'd', 'c', 'a'}
s3.add('a') # 自动去除重复的值
print(s3) # 结果为 {'b', 'd', 'c', 'a'}
- update(): 和列表的 extend() 方法相似,追加的数据是序列
# 举例
# 单个元素也可以添加
s3 = {
'a','b','c'}
s3.update('e')
print(s3) # {'e', 'a', 'b', 'c'}
s3.update('hello')
print(s3) # {'h', 'l', 'o', 'a', 'b', 'c', 'e'}
s3.update([10,20,30])
print(s3) # {'h', 10, 'l', 'o', 'a', 20, 'b', 'c', 30, 'e'}
1.3 删除数据
- remove(): 删除集合中的指定元素,如果元素不存在则报错
# 举例
s3 = {
'a','b','c'}
s3.remove(30)
print(s3) # 报错
s3.remove('b')
print(s3) # {'c', 'a'}
- discard(): 删除集合中的指定元素,如果元素不存在也不会报错
# 举例
s3 = {
'a','b','c'}
s3.discard('o')
print(s3) # {'c', 'a', 'b'}
- pop(): 随机删除集合中的某个元素,并返回这个元素
# 举例
s3 = {
'a','b','c'}
s3.pop()
print(s3) # {'a', 'c'}
1.4 查找数据
- in : 判断数据在集合序列,在返回 True 反之 False。
- not in : 判断数据不在集合序列 , 在返回 True 反之 False。
# 举例
s3 = {
'a','b','c'}
print('a' in s3) #结果为 True
print('a' not in s3) #结果为 False
二、公共操作
2.1 公共运算符
运算符 | 描述 | 支持的容器类型 |
---|---|---|
+ | 合并 | 字符串、列表、元组 |
* | 复制 | 字符串、列表、元组 |
in | 判断元素是否存在 | 字符串、列表、元组、字典 |
not in | 元素是否不存在 | 字符串、列表、元组、字典 |
- " + " 的操作
# 举例
# 字符串操作
print('a'