Python入门之字典的使用教程
什么是字典
字典(dictionary)是Python中的一种无序的键值对集合,是一种非常常用的数据类型。字典中的键(key)必须唯一且不可改变,而值(value)可以是任意类型的数据。在字典中,通过键来访问值,因此字典也被称为关联数组或哈希表。
字典的基本用法
创建字典
我们可以通过以下方式创建一个字典:
# 创建一个空字典
my_dict = {}
# 创建一个带有初始键值对的字典
my_dict = {'name': 'Tom', 'age': 18, 'gender': 'male'}
访问字典元素
访问字典元素时,可以通过键来获取对应的值:
# 获取字典中key为'name'的value
name = my_dict['name']
print(name) # Tom
如果访问的键不存在于字典中,则会抛出KeyError
异常。为了避免这种情况,我们可以使用get()
方法,该方法会返回一个默认值(默认为None
)而不是抛出异常:
# 获取字典中key为'weight'的值,如果该键不存在则返回默认值0
weight = my_dict.get('weight', 0)
print(weight) # 0
更新字典元素
在字典中,键是唯一的,因此如果我们想要更新字典中已有的元素,只需要使用相同的键来赋一个新值即可:
# 将字典中key为'age'的value更新为19
my_dict['age'] = 19
print(my_dict) # {'name': 'Tom', 'age': 19, 'gender': 'male'}
如果我们想要添加新的键值对到字典中,也非常简单,只需要使用一个新的键来赋值即可:
# 向字典中添加一个新的键值对'weight': 60
my_dict['weight'] = 60
print(my_dict) # {'name': 'Tom', 'age': 19, 'gender': 'male', 'weight': 60}
删除字典元素
删除字典元素可以使用del
关键字,指定要删除的键即可:
# 删除字典中key为'gender'的键值对
del my_dict['gender']
print(my_dict) # {'name': 'Tom', 'age': 19, 'weight': 60}
遍历字典
我们可以使用for
循环来遍历字典中的所有键值对,示例如下:
for key, value in my_dict.items():
print(key, value)
输出结果:
name Tom
age 19
weight 60
字典的高级用法
字典推导式
字典推导式与列表推导式类似,可以快速创建一个字典。例如,我们可以将两个列表合并成一个字典:
keys = ['name', 'age', 'gender']
values = ['Tom', 19, 'male']
my_dict = {key: value for key, value in zip(keys, values)}
print(my_dict) # {'name': 'Tom', 'age': 19, 'gender': 'male'}
嵌套字典
在字典中,我们可以将一个字典作为另一个字典的值,这就是嵌套字典。示例如下:
my_dict = {'info': {'name': 'Tom', 'age': 19, 'gender': 'male'}}
name = my_dict['info']['name']
print(name) # Tom
示例说明
以下是字典的两个示例说明:
示例一
假设有一个字典,其中存储了人名和对应的年龄,我们想获取年龄大于等于18岁的人名,可以采用如下代码:
my_dict = {'Tom': 19, 'Jerry': 17, 'Lucy': 20, 'Jim': 18}
result = [name for name, age in my_dict.items() if age >= 18]
print(result) # ['Tom', 'Lucy', 'Jim']
示例二
假设有一个字典,其中存储了学生的分数,我们想要将分数按照从大到小的顺序进行排序,可以使用如下代码:
my_dict = {'Tom': 90, 'Jerry': 85, 'Lucy': 95, 'Jim': 80}
sorted_dict = dict(sorted(my_dict.items(), key=lambda item: item[1], reverse=True))
print(sorted_dict) # {'Lucy': 95, 'Tom': 90, 'Jerry': 85, 'Jim': 80}
以上就是Python中字典的使用教程,希望对你有帮助!
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Python入门之字典的使用教程 - Python技术站