有没有办法在早期的 python 版本中使用 StrEnum ?

alg*_*ruh 7 python enums

python 3.11中的enum包有StrEnum类。我认为它很方便,但不能在 python 3.10 中使用它。无论如何,使用此类的最简单方法是什么?

小智 10

我认为你可以继承strEnum拥有StrEnum

from enum import Enum


class MyEnum(str, Enum):
    choice1 = "choice1"
    choice2 = "choice2"
Run Code Online (Sandbox Code Playgroud)

通过这种方法,您可以进行字符串比较:

"choice1" == MyEnum.choice1
>> True
Run Code Online (Sandbox Code Playgroud)

或者

你可以执行pip install StrEnum并得到这个:

from strenum import StrEnum


class MyEnum(StrEnum):
    choice1 = "choice1"
    choice2 = "choice2"
Run Code Online (Sandbox Code Playgroud)