Appearance
推导式
- 推导式是一种独特的数据处理方式,可以从一个数据序列构建另一个新的数据序列的结构体。
- 推导式是一种强大且简洁的语法,适用于生成列表、字典、集合和生成器。
列表推导式
- 格式:
[数据处理 for循环 if判断]if 判断是可选的
python
# 生成一个列表,包含 1 到 10 的平方数 且为偶数
squares = [x**2 for x in range(1, 11) if x % 2 == 0]
print(squares) # [1, 4, 9, 16, 25, 36, 49, 64, 81, 100]生成器表达式
- 没有元组推导式,只有生成器表达式
- 格式:
(数据处理 for循环 if判断)if 判断是可选的
python
# 生成一个生成器,包含 1 到 10 的平方数
squares = (x**2 for x in range(1, 11))
# 这是一个生成器
print(squares) # <generator object <genexpr> at 0x101a24048>
squares.__next__()字典推导式
- 格式:
{键:值数据处理 for循环 if判断}if 判断是可选的
python
# 生成一个字典,键为 1 到 10,值为键的平方数
squares = {x: x**2 for x in range(1, 11)}
print(squares) # {1: 1, 2: 4, 3: 9, 4: 16, 5: 25, 6: 36, 7: 49, 8: 64, 9: 81, 10: 100}集合推导式
- 格式:
{数据处理 for循环 if判断}if 判断是可选的
python
# 生成一个集合,包含 1 到 10 的平方数
squares = {x**2 for x in range(1, 11)}
print(squares) # {1, 4, 9, 16, 25, 36, 49, 64, 81, 100}