Python 2.7 Backport:枚举类不是abstact枚举类的实例

时间:2017-07-25 18:28:33

标签: python python-2.7

我正在使用Python 2.7的Enum类的pypi enum34 backport。

请考虑以下事项:

from enum import *

class ArtTools(Enum):
    pass

class Paintbrushes(ArtTools):
    four_inch_brush = 1
    two_inch_brush = 2
    fan_brush = 3
    paint_knife = 4

print type(Paintbrushes.fan_brush) # <enum 'Paintbrushes'>
assert isinstance(Paintbrushes.fan_brush, ArtTools)  # True/No Error

print type(Paintbrushes) # <class 'enum.EnumMeta'>
assert isinstance(Paintbrushes, ArtTools) # AssertionError

Paintbrushes不是ArtTools的原因吗?这似乎是一个错误。

1 个答案:

答案 0 :(得分:1)

Paintbrushes是类,而不是实例,因此它不是ArtTools或任何其他类的实例。