日期:
来源:数据科学实战收集编辑:数据科学研习社
栏目介绍
本栏目主要介绍 Python 的日常使用小技巧,希望能帮助大家利用一些碎片时间,掌握提高日常效率的方法~
字典推导式
这次我们来学习如何使用字典推导式(Dictionary Comprehensions)。
字典推导式是一种简洁的构建字典的方法,类似于列表推导式。它允许你用一行代码生成一个新字典,基于一个已有字典或可迭代对象的键值对,同时可以对键值对进行筛选和转换。
假设我们有一个字典,其中包含学生的名字和他们的分数,我们想要创建一个新的字典,其中只包含分数大于或等于60的学生,并将他们的名字转换为大写字母:
original_dict = {
"Alice": 58,
"Bob": 67,
"Cathy": 85,
"David": 45,
"Eva": 74
}
# 使用字典推导式生成新字典
passed_students = {name.upper(): score for name, score in original_dict.items() if score >= 60}
print(passed_students) # 输出: {'BOB': 67, 'CATHY': 85, 'EVA': 74}
在这个例子中,字典推导式的结构如下:
{key_expression: value_expression for key, value in iterable if condition}
key_expression 是应用于每个键的表达式(例如:name.upper()) value_expression 是应用于每个值的表达式(例如:score) key, value 是可迭代对象中的键值对 iterable 是原始可迭代对象(例如:original_dict.items()) condition 是筛选条件(例如:score >= 60)
字典推导式可以使你的代码更简洁,提高可读性。然而,与列表推导式一样,请注意,在创建非常复杂的字典推导式时,可能会导致代码难以理解。在这种情况下,使用普通的循环和条件语句可能更合适。