一.字典的介绍
dictionary(字典)是除了列表以外的 Python 中最灵活的数据类型。dict(字典)可以采用多个数据,通常用于存储描述一个物体的相关信息。
字典和列表最主要的区别是,字典是无序的对象集合,列表是有序的对象集合。
1.1 字典的语法规则
字典用大括号“{ }”定义,列表用中括号“[ ]”定义,元组用小括号定义“()”。
字典使用键值对存储数据,键值对之间使用逗号 “,”分隔。
- 键 key 是索引,键必须是唯一的。键只能使用字符串,数字或元组,因为他们共性是不可变。
- 值 value 是数据,值可以取任何数据类型。
- 键 和 值之间使用冒号“:”分隔。
1.2 字典的书写形式
# 字典的常规写法
id_lmh = {
"name":"lmh",
"age":22,
"gender":"男",
"height":"172cm"
}
# 定义空字典
# 第二个是通过类型转换的方法
dict1 = {}
dict2 = dict()
# 显示为一行
id_one = { "name":"one","age":18}
字典的键值对中的键写两次的话不会报错,会进行覆盖。如果多次的话以最后一次为主。
# 设置字典键重复
dict1 = {
"name": "L",
"name": "M",
"name": "H"
}
print(dict1)
"""
运行结果:
{'name': 'H'}
"""
二. 对字典进行修改
2.1 新增键值对
如果字典中存在对应的键值对会进行修改,不存在则会进行新增。
# 设置默认字典
id_lmh = {
"id":"0",
"name": "L",
}
id_lmh["age"] = 18
print(id_lmh)
"""
运行结果:
{'id': '0', 'name': 'L', 'age': 18}
"""
2.2 获取字典中的值。
在字典中可以通过键值对获取对应的值。
# 设置默认字典
id_lmh = {
"id":"0",
"name": "L",
}
print(id_lmh["name"])
"""
运行结果:
L
"""
2.3 删除字典
可以通过 del 函数删除字典,删除之后再引用会报错。
# 设置默认字典
id_lmh = {
"id":"0",
"name": "L",
}
del id_lmh
print(id_lmh["name"])
"""
运行结果:
NameError: name 'id_lmh' is not defined
"""
2.4 键值对的存在
键值对的存在问题只能按断键是否存在,不能够判断值是否存在。
# 设置默认字典
id_lmh = {
"id":"0",
"name": "L",
}
print("id" in id_lmh)
print("age" in id_lmh)
"""
运行结果:
True
False
"""
三. 字典的遍历
3.1 字典的普通遍历
使用for...in...循环进行遍历。
# 设置默认字典
id_lmh = {
"id":"0",
"name": "L",
}
for i in id_lmh:
print(i,id_lmh[i])
"""
运行结果:
id 0
name L
"""
3.2字典的方法遍历
方法 items 是将字典转为列表从而进行遍历。
# 设置默认字典
id_lmh = {
"id":"0",
"name": "L",
}
for key,value in id_lmh.items():
print(key,value)
"""
运行结果:
id 0
name L
"""
3.3 字典的方法遍历key
# 设置默认字典
id_lmh = {
"id":"0",
"name": "L",
}
for key in id_lmh.keys():
print(key)
"""
运行结果:
id
name
"""
3.4 字典的方法遍历value
# 设置默认字典
id_lmh = {
"id":"0",
"name": "L",
}
for value in id_lmh.values():
print(value)
"""
运行结果:
0
L
"""
3.5 pop删除方法
pop方法中输入的是键。
# 设置默认字典
id_lmh = {
"id":"0",
"name": "L",
}
id_lmh.pop("id")
print(id_lmh)
"""
运行结果:
{'name': 'L'}
"""