推荐答案
# 使用字典推导式创建一个字典,其中键是1到5的数字,值是键的平方
squared_dict = {x: x**2 for x in range(1, 6)}
print(squared_dict)输出结果:
{1: 1, 2: 4, 3: 9, 4: 16, 5: 25}本题详细解读
字典推导式的基本语法
字典推导式(Dict Comprehension)是Python中一种简洁的创建字典的方式。它的基本语法如下:
{key_expression: value_expression for item in iterable}key_expression:生成字典键的表达式。value_expression:生成字典值的表达式。item:迭代变量,通常来自iterable。iterable:可迭代对象,如列表、元组、集合等。
字典推导式的应用场景
字典推导式通常用于以下场景:
- 快速生成字典:通过简单的表达式快速生成字典。
- 过滤数据:结合条件语句过滤数据并生成字典。
- 转换数据:将一种数据结构转换为字典。
示例代码
示例1:生成平方字典
squared_dict = {x: x**2 for x in range(1, 6)}
print(squared_dict)输出:
{1: 1, 2: 4, 3: 9, 4: 16, 5: 25}示例2:过滤偶数并生成字典
even_squared_dict = {x: x**2 for x in range(1, 11) if x % 2 == 0}
print(even_squared_dict)输出:
{2: 4, 4: 16, 6: 36, 8: 64, 10: 100}示例3:将列表转换为字典
keys = ['a', 'b', 'c']
values = [1, 2, 3]
dict_from_lists = {k: v for k, v in zip(keys, values)}
print(dict_from_lists)输出:
{'a': 1, 'b': 2, 'c': 3}注意事项
- 键的唯一性:字典中的键必须是唯一的,如果键重复,后面的值会覆盖前面的值。
- 可读性:虽然字典推导式简洁,但在复杂场景下可能会降低代码的可读性,建议在简单场景下使用。
通过字典推导式,可以更简洁、高效地生成字典,提升代码的可读性和编写效率。