Типизация в Python. Работа с Mypy, PyCharm и SQLAlchemy 2.0 - Академия Selectel

Типизация в Python. Работа с Mypy, PyCharm и SQLAlchemy 2.0

Андрей Зайцев Андрей Зайцев Редактор 13 июня 2023

Текст для Python-разработчиков, которые хотят углубиться в тему типизации. Приводим краткий обзор трех докладов с митапа «Типичный Python». Разбираем работу со средой разработки PyCharm, статическим анализатором Mypy и программной библиотекой SQLAlchemy 2.0.

Изображение записи

Мы в Selectel много программируем на Python. И на одном из митапов поделились своим опытом, послушали коллегу из МТС Digital, а также ответили на вопросы участников. Выбирайте доклад с интересующей вас темой и смотрите его в записи.  А в конце текста вас ждет больше ссылок на полезные материалы по Python. 

Собственный статический анализатор типов для Python

Владимир Туров — наш разработчик из отдела выделенных серверов — столкнулся с отключением проверок в Python. Это случилось в системе управления выделенными серверами — проекте, который развивается много лет и набрал тяжелую кодовую базу. В нем нельзя просто взять и переделать все с нуля. Поэтому пришлось искать обходные пути и изобретать велосипеды.

В тексте «Как и зачем у нас появился статический анализатор типов для Python» он описал опыт решения этой нетривиальной задачи и показал примеры с кодом. 

А если вы хотите посмотреть и послушать версию, обогащенную персонажами из Mortal Kombat и ответами на вопросы, переходите к записи доклада. 

Смотреть доклад «Когда типизация делает тебе больно» →

Зачем нужна типизация, если duck typing это так удобно?

Александр Полищук — ведущий разработчик в МТС Digital — кратко объяснил, как типизация помогает держать код в чистоте, подсвечивать проблемные интеграции и сводить к минимуму количество ошибок runtime error.  

Александр рассказал про возникновение Mypy и показал, что вошло в релизы Mypy 1.0 и 1.1.1. А еще разобрал новинки type hints в Python 3.11 и привел примеры их использования. В конце спикер ответил на вопросы зрителей. 

Mypy — статический анализатор типов для Python, который позволяет находить ошибки несоответствия типов в коде. 

Впервые инструмент Mypy показал Юкка Лехтосало на PyCon в октябре 2012 года. В декабре 2012 года вышел первый релиз.  В 2016 году инструмент поддержал создатель Python Гвидо ван Россум. В феврале 2023 года вышла версия 1.0, а в марте 2023 — версия 1.1.1.  

Смотреть доклад «Oh My(py)» →

Мажорный релиз SQLAlchemy

В начале этого года случился релиз SQLAlchemy 2.0 — программной библиотеки на Python для работы с реляционными СУБД. Наш инженер по разработке в команде дисков и бэкапов Анатолий Матвеев внимательно разобрал новинку. 

Посмотрите запись его доклада. Анатолий рассказывает про изменения, связанные с PEP-484. Вы увидите, что хорошего сделали в релизе и как мигрировать на новую версию (спойлер: все хорошо, и выделять полгода на рефакторинг не придется). 

Смотреть доклад «Мажорный релиз SQLAlchemy» →

Больше про Python: книги, игры, инструменты

В нашем блоге есть и другие статьи про Python. 

7 полезных книг по Python для старта и развития 

3 полезных Python-инструмента для упрощения работы с кодом 

Как создать Minecraft на Python? Обзор библиотеки Ursina Engine