gpt4 book ai didi

python - 获取字符串转换的枚举值

转载 作者:IT老高 更新时间:2023-10-28 21:42:23 46 4
gpt4 key购买 nike

我定义了以下枚举:

from enum import Enum
class D(Enum):
x = 1
y = 2

print(D.x)

现在打印出来的值是

D.x

相反,我希望打印枚举的值

1

可以做些什么来实现这个功能?

最佳答案

您正在打印枚举对象。如果您只想打印,请使用 .value 属性:

print(D.x.value)

Programmatic access to enumeration members and their attributes section :

If you have an enum member and need its name or value:

>>>
>>> member = Color.red
>>> member.name
'red'
>>> member.value
1

如果您只想提供自定义字符串表示,则可以向枚举添加 __str__ 方法:

class D(Enum):
def __str__(self):
return str(self.value)

x = 1
y = 2

演示:

>>> from enum import Enum
>>> class D(Enum):
... def __str__(self):
... return str(self.value)
... x = 1
... y = 2
...
>>> D.x
<D.x: 1>
>>> print(D.x)
1

关于python - 获取字符串转换的枚举值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24487405/

46 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com