关于python:为什么我不能继承Enum的子类?

Why can't I subclass a subclass of Enum?

考虑以下代码:

1
2
3
4
5
6
7
8
9
from  enum import Enum

class SubclassOfEnum(Enum):
    x = 5
print(SubclassOfEnum.x)

class SubSubclassOfEnum(SubclassOfEnum):
    y = 6
print(SubSubclassOfEnum.y)

我们收到错误TypeError: Cannot extend enumerations

来自:Python36\\lib\\enum.py", line 436, in _get_mixins_


因为明确禁止使用成员对Enum进行子类化。

有关Enum的一般用例,请查看何时以及在何处使用...。

用于扩展Enum(将成员添加到现有的Enum中,而不是将其子类化)...