在Python中,字典是一种以键值对(key:value)形式存储数据的集合类型。它在Python 3.7及之后的版本中是有序的,在更早的版本中是无序的。字典能够根据键快速访问和修改对应的值,是处理关联性数据的常用选择。
1. 创建并打印字典
使用花括号{ }
定义字典:
thisdict = {
"pinpai": "Ford",
"xinghao": "Mustang",
"nianfen": 1964
}
print(thisdict)
# 输出示例:
# {'pinpai': 'Ford', 'xinghao': 'Mustang', 'nianfen': 1964}
可以看到,字典中的每一项由“键(key)”和“值(value)”构成,以冒号分隔,多个键值对间以逗号分隔。
2. 访问字典中的值
字典中的值通过键名来访问:
thisdict = {
"pinpai": "Ford",
"xinghao": "Mustang",
"nianfen": 1964
}
print(thisdict["pinpai"])
# 输出: Ford
在Python 3.6及之前的版本里,字典是无序的,无法通过索引号访问元素,需使用键来获取对应值。
3. 字典的有序性与可变性
- 有序(Ordered):从Python 3.7开始,字典会记住插入项的顺序,遍历或转换时按照插入顺序输出。
- 可变(Changeable):可以在字典创建之后添加、修改或删除键值对。
4. 不允许重复键
如果同一字典中出现相同的键,后一个值会覆盖前一个值:
thisdict = {
"pinpai": "Ford",
"xinghao": "Mustang",
"nianfen": 1964,
"nianfen": 2020
}
print(thisdict)
# 输出:
# {'pinpai': 'Ford', 'xinghao': 'Mustang', 'nianfen': 2020}
5. 字典长度与数据类型
使用len()
函数可查看字典包含的键值对数量:
thisdict = {
"pinpai": "Ford",
"xinghao": "Mustang",
"nianfen": 1964
}
print(len(thisdict))
# 输出: 3
字典的值可为任意数据类型,如字符串、整数、布尔值或列表:
thisdict = {
"pinpai": "Ford",
"dianzi": False,
"nianfen": 1964,
"yanse": ["hongse", "baise", "lanse"]
}
print(thisdict)
# 输出示例:
# {'pinpai': 'Ford', 'dianzi': False, 'nianfen': 1964, 'yanse': ['hongse', 'baise', 'lanse']}
6. 查看字典数据类型
thisdict = {
"pinpai": "Ford",
"xinghao": "Mustang",
"nianfen": 1964
}
print(type(thisdict))
# 输出: <class 'dict'>
Python将字典类型归为dict
。
7. 使用dict()构造函数创建字典
除了使用花括号创建字典,也可以使用dict()
方法:
thisdict = dict(xingming="zhangsan", nianling=36, guojia="nuowei")
print(thisdict)
# 输出示例:
# {'xingming': 'zhangsan', 'nianling': 36, 'guojia': 'nuowei'}
8. 与其他集合数据类型的对比
在Python中常见的集合数据类型有:
- 列表(List):有序、可修改,允许重复。
- 元组(Tuple):有序、不可修改,允许重复。
- 集合(Set):无序、元素不可修改(可添加或删除),不允许重复。
- 字典(Dictionary):有序(3.7+)、可修改,键不允许重复。
Python中文网提示:字典是Python中极为常用的数据结构之一,能够帮助我们轻松地以键值对的形式存储和管理数据。掌握了字典的基本概念和常见操作之后,你就能在实际项目中更高效地处理各种结构化信息。