我有下面的枚举
class Ranking(Enum):
FIRST = 'First',
SECOND = 'Second',
THIRD = 'Third'
当我尝试Ranking('First')
时,出现以下异常:ValueError: 'First' is not a valid Ranking
是否有任何有效的方法从字符串Ranking.FIRST
中获取'First'
?
答案 0 :(得分:3)
您正在考虑使用C样式,其中的换行符毫无意义,枚举成员之间必须使用逗号。在Python中,换行很重要,而这些逗号实际上正在创建元组:
# How Python sees your code
class Ranking(Enum):
FIRST = ('First',)
SECOND = ('Second',)
THIRD = 'Third'
删除逗号。