枚举
enum
from enum import Enum, unique, auto
# 保证枚举的值唯一性
@unique
class Season(Enum):
SPRING = 'spring' # 这里的值也可以是 int,或者 auto()
SUMMER = 'summer'
AUTUMN = 'autumn'
WINTER = 'winter'
Season.SPRING # <Season.SPRING: 'spring'>
Season.SPRING.name # 'SPRING'
Season.SPRING.value # 'spring'
# 好用:丛值构建枚举对象
Season('spring') # <Season.SPRING: 'spring'>
Enum 另有函数式的使用方式,不过本质是一样的。
enumerate
方便遍历。
enumerate(['a', 'b', 'c']) # <enumerate object at 0x0000010E57EB9AC0>
for i, x in enumerate(['a', 'b', 'c']):
print(i, x)
# 0 a
# 1 b
# 2 c