十一、字典
十一、字典
Pupper一、定义
定义空字典:
1 | members = {} |
字典对象定义用 花括号
{}
,字典里的每个元素之间用 逗号,
隔开;每个元素都是一个 键值对 ,键和值之间用 冒号
:
隔开;1
2
3
4members = {
'account1' : 13 ,
'account2' : 12
}::: warning
1.字典的
键
必须是可以进行 哈希值计算 的对象,通常是数字
或者字符串
;2.字典的
值
可以是 任何类型 的对象, 包括 数字、 字符串、 列表、字典、自定义类型 等等。:::
1
2
3
4members = {
'account1' : {'account':'account1', 'level': 13, 'point':3000} ,
'account2' : {'account':'account2', 'level': 12, 'point':36000}
}字典对象: 根据 键 去查找 值 非常的方便高效
1
2
3
4
5members = {
'account1' : 13 ,
'account2' : 12
}
print(members['account1']) # 13字典对象的
键是唯一的
,如果出现两个相同的键,后面的元素会替换前面的元素。1
2
3
4
5members = {
'account1' : 13 ,
'account1' : 12
}
print(members) # {'account1': 12}如果查找的 键 在字典中不存在,则会报错
1
2
3
4
5members = {
'account1' : 13 ,
'account2' : 12
}
print(members['account99']) # KeyError: 'account99'
二、 添加、 修改、 删除
1 | var[key] = something |
括号里面的key:
- 如果在字典中 不存在,就是 添加元素 的的操作,
- 如果已经 存在 ,就是 重新赋值 操作。 因为字典不允许有相同的key
1. 添加
1 | members = {} |
结果:
1 | { |
2. 修改
1 | { |
结果为:
1 | { |
3. 删除
pop
:可以返回删除key
对应的value
对象1
2
3
4
5
6
7
8members = {
'account1' : 13 ,
'account2' : 12
}
val = members.pop('account1')
print(members)
print(val) # 13del
1
2
3
4
5
6members = {
'account1' : 13 ,
'account2' : 12
}
del members['account1']
三、判断字典是否存在某个 key
a in var
# 检查 a 是否在var 中存在,存在返回True,否则返回Falsea not in var
# 检查 a 是否不在var 中,存在返回 False,否则返回 True1
2
3
4
5
6
7
8
9
10members = {
'account1' : 13 ,
'account2' : 12
}
if 'account1' in members:
print('account1 在字典中存在') # True
if 'account88' not in members:
print('account88 不在字典中') # True
四、访问字典的所有元素
items()
方法:可以返回一个列表对象,每个元素就是键值组成的元组。
1 | [('account1', 13), ('account2', 12), ('account3', 15)] |
访问所有元素:
1 | members = { |
得到所有的 key 和 value 对象
1. keys()
方法
1 | members = { |
2. values()
方法
1 | members = { |
六、 清空字典
1. clear()
方法
1 | members = { |
2. 重新赋值
1 | members = { |
::: warning
clear
方法指向的是 原字典- 重新赋值 指向的是 新字典
:::
七、字典合并
update()
方法:可以合并两个字典得到一个新的字典
当有相同的键时,主字典中的 值 会被替换
1 | members = { |
八、 得到字典元素的个数
len()
方法
1 | members = { |
九、字典 与 json 之间转换
1、 字段 转换为 json(dumps()方法)
1 | import json |
2. json 转换为 字典(loads()方法)
1 | import json |
3. 关于json中文编码
json.dumps
序列化时对中文默认使用的ascii编码
想输出真正的中文需要指定ensure_ascii=False
indent=4
: 表示缩进
1 | import json |
评论
匿名评论隐私政策
✅ 你无需删除空行,直接评论以获取最佳展示效果