Устранить проблему с проверкой типов mypy

500 руб. за проект
03 января 2024, 14:02 • 4 отклика • 52 просмотра
У меня есть код, в котором используется абстрактный базовый класс, в котором есть один абстрактный метод. От этого класса наследуются три конкретных класса, каждый из которых возвращает значение своего типа, а эти типы являются наследниками также своего класса.

Код размещен здесь: https://github.com/epogrebnyak/abacus/blob/main/x2...

на mypy fine.py ругается нещадно:

<code>fine.py:70: note: Superclass:
fine.py:70: note: def t_account(self) -> type[RegularAccount] | type[ContraAccount] | type[ExtraAccount]
fine.py:70: note: Subclass:
fine.py:70: note: type[RegularAccount]</code>

Чтобы проверить логику, я сделал упрощенный пример, в нем проверки проходят нормально: https://github.com/epogrebnyak/abacus/blob/main/x/...

Требуется изменить fine.py чтобы проходила проверка mypy fine.py


Отзывы
Игорь происследовал нетривиальную проблему с аннотациями типов в Питоне и быстро рпедложил работающее решение, которое устроило и mypy, и меня )
7 месяцев назад
R50 e5d0e3ac3a65f23b60db9be9075a30a0
Фрилансер
Было приятно иметь дело с Евгением.
7 месяцев назад