zip()函数时一个内建函数,可以用来将多个可迭代对象中对应的元素打包成一个个元组,然后返回由这些元组组成的zip对象,用于生成列表,元组,集合等类型的数据结构
a = [1, 2, 3]
b = ['one', 'two', 'three']
c = ['.', '..', '...']
print(list(zip(a, b)) # [(1, 'one'), (2, 'two'), (3, 'three')]
print(list(zip(a, b, c)) # [(1, 'one', '.'), (2, 'two', '..'), (3, 'three', '...')]
print(dict(zip(a, b)) # {1: 'one', 2: 'two', 3: 'three'}
pairs = list(zip(a, b))
# zip()与*运算符结合使用来解压序列,称为解包
a, b = zip(*pairs)
# 实际应用示例
# 假设需要将两个列表的数据对应相加,可以使用zip进行压缩
a = [1, 2, 3]
b = [4, 5, 6]
result = [x + y for x, y in zip(a, b)]
枚举类型。代码清晰易读, 减少错误,只能选择预定义的值;便于比较
python
from enum import Enum
class Color(Enum):
RED = 1
GREEN = 2
BLUE = 3
# 使用枚举
favorite_color = Color.RED
if favorite_color == Color.RED:
print("My favorite color is red.")