У меня есть следующее перечисление
class Ranking(Enum):
FIRST = 'First',
SECOND = 'Second',
THIRD = 'Third'
Когда я пытаюсь Ranking('First')
я получаю следующее исключение: ValueError: 'First' is not a valid Ranking
Есть ли эффективный способ получить Ranking.FIRST
из строки 'First'
?
Вы думаете, что C-стиль, где разрывы строк бессмысленны, а члены перечисления нуждаются в запятых между ними. В Python разрывы строк имеют значение, и эти запятые на самом деле создают кортежи:
# How Python sees your code
class Ranking(Enum):
FIRST = ('First',)
SECOND = ('Second',)
THIRD = 'Third'
Удалите запятые.
Ranking['First']
?