python3中构造字典的代码怎么写?

Python3中构造字典有四种常用方法:1. 使用花括号直接定义键值对,如{'name': 'Alice', 'age': 25};2. 调用dict()函数通过关键字参数或键值序列创建,如dict(name='Alice')或dict([('name', 'Alice')]);3. 利用zip()函数将两个列表合并为字典,如dict(zip(keys, values));4. 使用字典推导式批量生成,如{x: x**2 for x in range(1,6)}。其中键必须为不可变类型,值可为任意类型,根据场景选择合适方式可提升代码可读性与效率。

在 Python3 中构造字典有多种方式,下面介绍几种常用且实用的方法。

使用花括号 {} 直接定义

这是最常见的方式,用键值对的形式直接创建字典。

# 基本写法
user = {'name': 'Alice', 'age': 25, 'city': 'Beijing'}

空字典

empty_dict = {}

使用 dict() 构造函数

通过 dict() 函数可以更灵活地创建字典。

# 使用关键字参数
user = dict(name='Alice', age=25, city='Beijing')

使用键值对序列(如列表或元组)

user = dict([('name', 'Alice'), ('age', 25), ('city', 'Beijing')])

从两个列表构建

keys = ['name', 'age', 'city'] values = ['Alice', 25, 'Beijing'] user = dict(zip(keys, values))

使用字典推导式

当你需要根据某种规则批量生成键值对时,字典推导式非常高效。

# 示例:创建平方映射
squares = {x: x**2 for x in range(1, 6)}
# 结果: {1: 1, 2: 4, 3: 9, 4: 16, 5: 25}

带条件的推导式

even_squares = {x: x**2 for x in range(1, 11) if x % 2 == 0}

小提示: 字典的键必须是不可变类型,比如字符串、数字、元组;而值可以是任意类型。

基本上就这些。根据场景选择合适的方式,代码会更清晰简洁。