Python编程基础之字典

  • Post category:Python

Python编程基础之字典

1. 什么是字典?

字典是一种可变容器,用于存储无序的键值对(key-value),支持插入、删除和修改操作。

字典是由花括号{}包含的一系列键值对,每个键值对之间用逗号分隔。键值对中,键(key)必须唯一且不可重复,值(value)则可以是任意类型的数据。

下面是一个字典的示例:

user = {'name': '小明', 'age': 20, 'gender': '男'}

2. 字典的基本操作

2.1 创建字典

我们可以用 {} 或 dict() 函数来创建一个字典,格式如下:

# 使用 {} 创建字典
user = {'name': '小明', 'age': 20, 'gender': '男'}

# 使用 dict() 函数创建字典
user = dict(name='小明', age=20, gender='男')

2.2 访问字典中的值

字典的键是唯一的,我们可以利用键来访问对应的值。字典的访问方式是通过方括号[],将键放在方括号中,例如:

user = {'name': '小明', 'age': 20, 'gender': '男'}
print(user['name'])  # 输出:小明

如果字典中没有对应的键,则会抛出 KeyError 异常。因此,在访问字典元素之前,我们可以先使用 in 或 get() 方法来判断键是否存在。

2.3 修改字典中的值

字典中的值是可以修改的,我们可以通过下标的方式直接修改,例如:

user = {'name': '小明', 'age': 20, 'gender': '男'}
user['age'] = 21
print(user)  # 输出:{'name': '小明', 'age': 21, 'gender': '男'}

如果键不存在,则会创建一个新的键值对。

2.4 添加键值对

我们可以通过下标的方式添加新的键值对,例如:

user = {'name': '小明', 'age': 20, 'gender': '男'}
user['email'] = 'xiaoming@gmail.com'
print(user)  # 输出:{'name': '小明', 'age': 20, 'gender': '男', 'email': 'xiaoming@gmail.com'}

2.5 删除键值对

我们可以使用 del 关键字来删除指定的键值对,例如:

user = {'name': '小明', 'age': 20, 'gender': '男'}
del user['name']
print(user)  # 输出:{'age': 20, 'gender': '男'}

2.6 清空字典

我们可以使用 clear() 方法来清空字典中所有的元素,例如:

user = {'name': '小明', 'age': 20, 'gender': '男'}
user.clear()
print(user)  # 输出:{}

3. 字典的常见操作

3.1 遍历字典

字典中的元素是无序的,我们可以使用 for 循环遍历字典中的所有键值对,例如:

user = {'name': '小明', 'age': 20, 'gender': '男'}
for key, value in user.items():
    print(key, value)

其中,items() 方法返回的是一个键值对列表,每个键值对是一个元组(key, value)。

3.2 获取所有键、所有值

我们可以使用 keys() 和 values() 方法分别获取所有键和所有值,例如:

user = {'name': '小明', 'age': 20, 'gender': '男'}
keys = user.keys()
values = user.values()
print(keys)  # 输出:dict_keys(['name', 'age', 'gender'])
print(values)  # 输出:dict_values(['小明', 20, '男'])

其中,keys() 返回的是一个包含所有键的列表,values() 返回的是一个包含所有值的列表。

3.3 判断键是否存在

我们可以使用 in 关键字或者 get() 方法来判断指定的键是否存在于字典中,例如:

user = {'name': '小明', 'age': 20, 'gender': '男'}
print('name' in user)  # 输出:True
print(user.get('email'))  # 输出:None (如果不存在指定的键,则返回 None)

如果键存在,则返回 True,否则返回 False。get() 方法则是在键不存在时,不会抛出异常,而是返回一个默认值。

4. 总结

到这里,我们已经学习了 Python 字典的基本操作,包括字典的创建、访问、修改、添加、删除等操作,以及字典的常见操作如遍历、获取所有键值等操作。掌握了字典的基本用法,我们便可在 Python 的程序设计中更灵活地使用字典来解决问题。