/

Python 列舉

Python 列舉

列舉是綁定到常量值的可讀名稱。

要使用列舉,請從 enum 標準庫模塊中導入 Enum

1
from enum import Enum

然後可以以此方式初始化一個新的列舉:

1
2
3
class State(Enum):
INACTIVE = 0
ACTIVE = 1

一旦這樣做了,您就可以引用 State.INACTIVEState.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”]