Python 列舉
列舉是綁定到常量值的可讀名稱。
要使用列舉,請從 enum
標準庫模塊中導入 Enum
:
1 | from enum import Enum |
然後可以以此方式初始化一個新的列舉:
1 | class State(Enum): |
一旦這樣做了,您就可以引用 State.INACTIVE
和 State.ACTIVE
,它們扮演常量的角色。
現在,如果您嘗試打印 State.ACTIVE
,例如:
1 | print(State.ACTIVE) |
它不會返回 1
,而是返回 State.ACTIVE
。
可以通過列舉分配的數字來達到相同的值:print(State(1))
將返回 State.ACTIVE
。使用方括號表示法 State['ACTIVE']
也是如此。
但是您可以使用 State.ACTIVE.value
來獲取值。
您可以列出列舉的所有可能值:
1 | list(State) # [<State.INACTIVE: 0>, <State.ACTIVE: 1>] |
您可以計算個數:
1 | len(State) # 2 |
tags: [“Python”, “Enum”]