Использование typing.Generic в Python

Опубликовано 18 February 2022 в Python • Помечено python, type hints, typing, mypy, PyCharm

Я работаю над проектом с довольно большой кодовой базой. Проект с историей. Некоторые части наша команда написала задолго до аннотаций типов. Мы до сих пор добавляем их в наш легаси код и улучшаем существующие подсказки. Стоит эта игра свеч? Определенно. Наши пользователи - разработчики. Они открывают наш код в PyCharm ежедневно. И они надеются, что он поможет им решить их задачи максимально быстро и просто.


Продолжить чтение

Tuple[Callable, Any, ...]

Опубликовано 29 January 2018 в Python • Помечено typing, mypy, python

Подсказки с типами могут сильно помочь в работе с большим проектом на Питоне. Тем не менее, иногда они требуют рефакторинга кода. Я писал об этом в прошлом году в этой статье, но тогда я не смог найти хорошего примера иллюстрирующего то, что я хочу сказать.


Продолжить чтение

Как внедрить mypy в проекте на Python 2.7

Опубликовано 11 December 2017 в Python • Помечено typing, mypy, python

Я многократно писал, что описание типов в питоне помогает в работе с большими и средними проектами. При этом, если внедрять типы, то нужно регулярно делать статический анализ, причем в CI. А вот это уже не так-то просто внедрить. Эта статья - мой рассказ о том какие трудности придется преодолеть в процессе внедрения.


Продолжить чтение

mypy для проекта на Python 2.7

Опубликовано 29 July 2016 в Python • Помечено python, mypy, type hinting

Аннотация типов может сильно помочь при работе над большим проектом на питоне: многие ошибки в дизайне и использовании функций выявляются практически сразу. Конечно для этого требуется использование внешний инструментов для статического анализа, таких как MyPy. Это великолепный инструмент, но он поддерживает третью ветку питона. Поддержка Python 2.7 в нем требует некоторой подготовки.


Продолжить чтение