在Python中,字典(dictionary)是一种内置的数据结构,用于存储键值对(key-value pairs)的集合。字典的特点是:无序、可变、且不重复的键。字典以大括号 {}
表示,使用冒号 :
将键和对应的值分隔开。字典是Python中最灵活和最强大的数据类型之一。
字典的基本特征
- 无序性:字典中的元素是无序的,Python 3.7 及以后版本中,字典保持插入顺序,但在以前的版本中是无序的。
- 可变性:字典是可变的,可以在创建后添加、删除或修改键值对。
- 唯一键:字典中的键是唯一的,不能重复。如果用重复的键进行赋值,最后一个赋值将覆盖之前的值。
字典的创建
可以通过多种方式创建字典,以下是几种常见的方法:
# 直接创建字典
my_dict = {'name': 'Alice', 'age': 25, 'city': 'Beijing'}
# 使用 dict() 函数创建字典
my_dict2 = dict(name='Bob', age=30, city='Shanghai')
# 使用字典推导式
my_dict3 = {x: x**2 for x in (2, 3, 4, 5)}
访问字典中的值
可以通过键来访问字典中的值,方法如下:
print(my_dict['name']) # 输出: Alice
print(my_dict['age']) # 输出: 25
如果试图访问不存在的键,会抛出 KeyError
。可以使用 get()
方法安全地访问值:
print(my_dict.get('name')) # 输出: Alice
print(my_dict.get('salary', 'Not found')) # 输出: Not found
修改和更新字典
可以通过键直接修改值或者使用 update()
方法进行更新:
# 修改值
my_dict['age'] = 26
# 更新字典
my_dict.update({'city': 'Hangzhou', 'salary': 5000})
删除字典中的元素
可以使用 del
语句或者 pop()
方法删除字典中的元素:
# 使用 del 删除
del my_dict['city']
# 使用 pop 删除并返回值
age = my_dict.pop('age')
print(age) # 输出: 26
字典的遍历
可以使用 for
循环方便地遍历字典中的键、值:
# 遍历键
for key in my_dict:
print(key, my_dict[key])
# 遍历值
for value in my_dict.values():
print(value)
# 遍历键值对
for key, value in my_dict.items():
print(f'{key}: {value}')
字典的嵌套
字典可以嵌套,即字典中可以包含另一个字典,这样可以用来表示更复杂的数据结构。例如,表示一个学生的信息可以用以下方式:
student = {
'name': 'Charlie',
'age': 20,
'courses': {
'math': 90,
'english': 85
}
}
print(student['courses']['math']) # 输出: 90
小结
字典作为一种灵活、强大的数据结构,广泛应用于数据处理、Web开发、数据库操作等场景。它的无序性、动态性以及键值对的特性使得字典成为Python编程中不可或缺的一部分。无论是在简单的数据存储还是复杂的数据处理上,字典都能提供便捷的解决方案。通过不断的实践和应用,我们可以更好地掌握字典的各种用法,从而提高我们的编程效率和代码质量。