Python 3 – 字典
在 Python 中,字典是一种可变容器,用于存储键和与之相应的值。
创建字典
字典(dictionary)由键(key)和值(value)组成,用冒号(:)分隔。每对键和值之间用逗号(,)分隔,并且整个字典用花括号({})包裹起来。
# 创建一个空字典
empty_dict = {}
# 创建一个字典
my_dict = {'name': 'Alice', 'age': 25, 'gender': 'female'}
# 也可以使用内置函数 dict 来创建一个字典
my_dict = dict(name='Bob', age=30, gender='male')
访问字典元素
可以使用方括号([])访问字典中的元素,括号中是键名。
my_dict = {'name': 'Alice', 'age': 25, 'gender': 'female'}
# 访问 name 键的值
print(my_dict['name']) # 输出 'Alice'
# 如果键不存在,会报错
print(my_dict['height']) # 报错:KeyError: 'height'
还可以使用 get() 方法访问字典中的元素,括号中是键名。如果键不存在,则返回一个默认值(如果没有指定默认值,则返回 None)。
my_dict = {'name': 'Alice', 'age': 25, 'gender': 'female'}
# 访问 name 键的值
print(my_dict.get('name')) # 输出 'Alice'
# 如果键不存在,返回默认值
print(my_dict.get('height', 'unknown')) # 输出 'unknown'
修改字典元素
字典中的元素可以通过访问它们并重新赋值来修改。
my_dict = {'name': 'Alice', 'age': 25, 'gender': 'female'}
# 修改 name 键的值
my_dict['name'] = 'Bob'
print(my_dict) # 输出 {'name': 'Bob', 'age': 25, 'gender': 'female'}
添加字典元素
可以使用方括号([])和等号(=)来添加新键值对。
my_dict = {'name': 'Alice', 'age': 25, 'gender': 'female'}
# 添加一个新键值对
my_dict['height'] = 165
print(my_dict) # 输出 {'name': 'Alice', 'age': 25, 'gender': 'female', 'height': 165}
删除字典元素
可以使用 del 关键字删除字典中的元素。
my_dict = {'name': 'Alice', 'age': 25, 'gender': 'female'}
# 删除 age 键值对
del my_dict['age']
print(my_dict) # 输出 {'name': 'Alice', 'gender': 'female'}
字典的常见操作
遍历字典
可以使用 for 循环遍历字典中的所有键值对。
my_dict = {'name': 'Alice', 'age': 25, 'gender': 'female'}
# 遍历字典
for key, value in my_dict.items():
print(key, value)
获取键列表和值列表
可以使用 keys() 方法获取字典中所有的键,并使用 values() 方法获取字典中所有的值。
my_dict = {'name': 'Alice', 'age': 25, 'gender': 'female'}
# 获取键列表
keys = my_dict.keys()
print(keys) # 输出 ['name', 'age', 'gender']
# 获取值列表
values = my_dict.values()
print(values) # 输出 ['Alice', 25, 'female']
检查键是否存在
可以使用 in 关键字检查字典中是否存在某个键。
my_dict = {'name': 'Alice', 'age': 25, 'gender': 'female'}
# 检查是否存在 name 键
if 'name' in my_dict:
print('name exists') # 输出 'name exists'
获取键的值
可以使用 setdefault() 方法获取键的值。如果键不存在,则设置一个默认值并返回。
my_dict = {'name': 'Alice', 'age': 25, 'gender': 'female'}
# 获取 name 键的值
name = my_dict.setdefault('name', 'unknown')
print(name) # 输出 'Alice'
# 获取 height 键的值(不存在,则返回默认值)
height = my_dict.setdefault('height', 165)
print(height) # 输出 165
结论
字典是 Python 中一个非常有用的数据类型,它可以轻松地存储和管理键值对。在字典中,键必须是唯一的,并且只能是不可变的对象(如字符串、数字或元组)。值可以是任何 Python 对象。通过学习字典的常见操作,我们可以更好地使用它来编写 Python 程序。