序列解包
解包在英文里叫做 Unpacking,就是将容器里面的元素释放出来。Python 中的解包是自动完成的,例如:
python
# 元组解包
>>> a, b, c = (1, 2, 3)
>>> print(a, b, c)
1 2 3
# 列表解包
>>> a, b, c = [1, 2, 3]
>>> print(a, b, c)
1 2 3
# 用 _ 收集不用的变量(了解)
>>> _, _, c = tuple('abc')
>>> _, c
('b', 'c')
# 另外一种解包方式
>>> print(*range(10))
0 1 2 3 4 5 6 7 8 9
_
是被舍弃的变量
列表推导式
推导式 comprehensions(又称解析式),是 Python 的一种独有特性。推导式是可以从一个数据序列构建另一个新的数据序列的结构体。
需求:创建一个 0-10 的列表。
python
>>> arr = []
>>> for index in range(1, 11):
... if index % 2 == 0:
... arr.append(f'包子 {index}')
...
>>> print('arr: ', arr)
arr: ['包子 2', '包子 4', '包子 6', '包子 8', '包子 10']
>>> arr1 = [f'包子 {index}' for index in range(1, 11) if index % 2 == 0]
>>> print('arr1:', arr1)
arr1: ['包子 2', '包子 4', '包子 6', '包子 8', '包子 10']