将枚举self.value转换为__str__
内的字符串是否是一个好主意
如果我应该添加str(self.value)或仅仅是self.value以从枚举中的每个键获取价值,请尝试征求大家的意见。好处之一是强制 str 结果作为字符串。所以当一些愚蠢的工程师把ny = 10234
放进去时,我仍然可以得到字符串类型的值
from enum import Enum
class City(Enum):
def __str__(self):
return str(self.value)
ny = 'New York'
ca = 'New California'
nj = 'New Jersey'
RI = 'Rhode Island'
City.RI
答案 0 :(得分:0)
__str__
必须返回str
。如果要覆盖默认的Enum __str__
方法,则必须从中返回一个str
。
此外,__str__
应该返回一个很好的,易于理解的字符串-您可能会在文本中输入某些内容-而不是repr()
的输出,该字符串应用于调试和其他低级任务