如何在python Enum中更改auto的基值?

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)

Eth*_*man 5

如果您希望某些成员具有某些值,只需分配它们:

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)