【问题标题】:Why can't I subclass a subclass of Enum?为什么我不能继承 Enum 的子类?
【发布时间】:2018-04-12 21:29:26
【问题描述】:

考虑以下代码:

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_

【问题讨论】:

    标签: python python-3.x enums


    【解决方案1】:

    因为用成员对Enums 进行子类化是specifically disallowed

    对于Enum 的一般用例,请查看When and where to use...

    对于extending Enums(将成员添加到现有Enums,而不是对其进行子类化)...

    【讨论】:

      猜你喜欢
      • 2010-10-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-09-28
      • 1970-01-01
      • 1970-01-01
      • 2015-09-02
      • 1970-01-01
      相关资源
      最近更新 更多