Python枚举实现

Python枚举实现,python,enums,Python,Enums,我在python中声明了如下枚举。我不知道如何使用它们。当我创建此类的实例时,它会给出错误,因为需要两个参数,一个参数给定 class CBarReference(Enum): ThisBar = 0, NextBar = 1, Undefined=2 a=CBarReference() 我知道错误是什么,但除了self之外,我不知道作为第二个参数应该给出什么。您不应该创建枚举的实例;它们都是直接从类中访问的,您可以随意将它们分配给变量: a = CBarReference.ThisB

我在python中声明了如下枚举。我不知道如何使用它们。当我创建此类的实例时,它会给出错误,因为需要两个参数,一个参数给定

class CBarReference(Enum):    
ThisBar = 0,
NextBar = 1,
Undefined=2
a=CBarReference()

我知道错误是什么,但除了self之外,我不知道作为第二个参数应该给出什么。

您不应该创建枚举的实例;它们都是直接从类中访问的,您可以随意将它们分配给变量:

a = CBarReference.ThisBar
b = CBarReference.NextBar
c = CBarReference.Undefined
d = CBarReference.ThisBar
assert(a == d)
assert(b != a)
assert(b != c)

你读过吗?或者考虑显示您正在运行的实际代码和完整的错误回溯?请告诉我如何创建这种类型的类和第二个参数。我需要创建一个实例。您需要一个实例做什么?出现错误的原因是Enum的构造函数需要*args字符串,这样您就可以创建一个Enum而无需子类化。