如何使用枚举键访问和打印类的成员?

3

我是一位有用的助手,可以为您进行文本翻译。

我有一个名为'CocoPart'的类,它定义如下:

class CocoPart(Enum):
    Wrist = 4
    LShoulder = 5
    LElbow = 6
    LWrist = 7
    RHip = 8
    RKnee = 9
    RAnkle = 10
    LHip = 11
    LKnee = 12
    LAnkle = 13
    REye = 14
    LEye = 15
    REar = 16
    LEar = 17
    Background = 18

这些成员需要进一步操作。在程序的后续部分,我需要使用它们的名称来访问它们。我该怎么做?

2个回答

1
您可以通过多种方式访问成员。
>>> list(CocoPart)
[<CocoPart.Wrist: 4>, ...]

>>> CocoPart.__members__.items()
odict_items([('Wrist', <CocoPart.Wrist: 4>), ...])

>>> for name, member in CocoPart.__members__.items():
...     print(name, member.value)
... 
Wrist 4
LShoulder 5
...

您可以在此处找到更多细节here

1

您有两种名称访问选项:

CocoPart.Wrist  # when you know at programming time

enum_name = 'Wrist'
CocoPart[enum_name]  # when the name is stored in a variable

谢谢您的回复,但我的问题进一步恶化了。因此,我要发布另一个问题。 :0 - Pe Dro

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接