Строго типизированные перечисления для Python (mypy) ⇐ Python

Программы на Python
Anonymous
Строго типизированные перечисления для Python (mypy)

Сообщение Anonymous »

Я использую mypy для набора текста, но для Enum он не работает
Большинство определяемых мной перечислений представляют собой только целочисленные сопоставления
Например.

Код: Выделить всё

class Role(Enum):
ENG = 0
PRODUCT = 1
BUSINESS = 2
FOUNDER = 3
Когда я создаю перечисление и пытаюсь получить его значение (чтобы сохранить его в базе данных), его тип определяется как Любой.

Код: Выделить всё

a = Role(2)
a.value  # inferred as Any instead of int
Как это изменить, чтобы печатать было удобнее? Я не против создать новый базовый класс и использовать его вместо Enum.

Подробнее здесь: https://stackoverflow.com/questions/697 ... ython-mypy

Вернуться в «Python»