如何将枚举名称转换为字符串?

时间:2019-07-26 21:59:54

标签: python

不能重复:enum - getting value of enum on string conversion

这里的问题是关于如何将Enum名称(左边)转换为字符串,而不是值(右边)。

使用以下Enum

class test(Enum):
    aa = 1
    bb = 2

我可以这样做:

v = test.aa
print(v)

我得到:

test.aa

但是如何将v转换为字符串?

2 个答案:

答案 0 :(得分:0)

只需访问对象上的name属性:

from enum import Enum

class test(Enum):
    aa = 1
    bb = 2

v = test.aa
print(v.name)
  

输出:

     
aa

答案 1 :(得分:0)

您可以强制转换值或枚举本身

str(test.aa.value) == 1

str(test.aa) == 'test.aa'

print(test.aa)还将其转换为字符串