mr_*_*_js 3 python enums python-3.x
假设我有以下代码,如何更改 auto 的基值,以便 Animal.ant 是任意值,例如 10,而不是 1?
from enum import Enum, auto
class Animal(Enum):
ant = auto()
bee = auto()
cat = auto()
dog = auto()
Run Code Online (Sandbox Code Playgroud)
如果您希望某些成员具有某些值,只需分配它们:
class Animal(Enum):
ant = 10
bee = auto()
cat = auto()
dog = auto()
Run Code Online (Sandbox Code Playgroud)
这将自动调整后继成员的值:
>>> list(Animal)
[<Animal.ant: 10>, <Animal.bee: 11>, <Animal.cat: 12>, <Animal.dog: 13>]
Run Code Online (Sandbox Code Playgroud)