
Python 3.14 уже вышел и принес с собой целый ворох изменений: улучшения самой сути языка, серьёзные апгрейды интерпретатора, новые возможности в стандартной библиотеке. Самые заметные изюминки — template string literals (t-строки), отложенная обработка аннотаций и официальная поддержка субинтерпретаторов прямо «из коробки».
Теперь в Python есть t-строки — template strings, которые выглядят почти как всем привычные f-строки (просто вместо f теперь используем t, например: t'Господин {name}'). В отличие от f-строк, t-строка возвращает объект Template, который позволяет разделять статическую и динамическую часть текста прямо во время выполнения. Это действительно спасение для безопасности работы с внешними данными — например, для защиты от XSS в HTML или при использовании SQL-запросов.
Принцип работы аннотаций типов (: str в аргументах функций) полностью изменился: теперь аннотации вычисляются только тогда, когда это действительно нужно, с помощью отложенной (deferred) оценки. Больше не придется оборачивать аннотации в строки, чтобы избежать ошибок вроде NameError, если имя появляется позже в коде.
Лично для меня самое крутое — это новые, понятные и подробные сообщения об ошибках. Теперь если случайно написать «whille» вместо «while», Python прямо подскажет правильное ключевое слово. Даже такие tricky моменты, как elif сразу после else, теперь разбираются с наглядными подсказками. Такие улучшения экономят и нервы, и время на отладке!
Одна из главных целей релиза — сделать Python быстрее и раскрыть потенциал современных многопроцессорных систем. Если работаете с серьезными вычислениями, теперь можно смело использовать free-threaded сборку Python, которая вышла из стадии эксперимента. При этом в однопоточном режиме производительность практически не страдает (замедление всего на 5–10%) — это реальный прорыв! Задача — максимально загрузить все ядра процессора и наконец-то уйти от ограничений GIL.
Еще одно важное новшество — мощная возможность, раньше доступная только через C-API, теперь есть и в стандартной библиотеке: модуль concurrent.interpreters. Изоляция как у процессов и скорость потоков теперь для всех! Модуль облегчил жизнь тем, кто использует современные модели параллелизма, например, акторную (actor model) — ваша параллельная разработка станет проще и стабильнее. Небольшие ограничения пока остаются — например, запуск интерпретатора требует чуть больше времени, но разработчики продолжают всё ускорять.
В комплекте теперь и новейший модуль для работы с форматом Zstandard (compression.zstd). Этот алгоритм стал хитом за счет космической скорости и эффективности, а пользоваться новым модулем так же удобно, как lzma или bz2.
Тем, кто борется с отладкой асинхронного кода, подогнали новый инструмент: теперь прямо из командной строки можно инспектировать асинхронные процессы. Через python -m asyncio ps PID видно все выполняющиеся задачи, а pstree красиво покажет дерево вызовов. Теперь легко вычислить, где именно тормозит код и как устроены ваши корутины.
Скачать свежий Python можно на официальном сайте или на GitHub.
Если вам понравилась эта статья, подпишитесь, чтобы не пропустить еще много полезных статей!
Премиум подписка — это доступ к эксклюзивным материалам, чтение канала без рекламы, возможность предлагать темы для статей и даже заказывать индивидуальные обзоры/исследования по своим запросам!
Подробнее о том, какие преимущества вы получите с премиум подпиской, можно узнать здесь
Также подписывайтесь на нас в:
- Telegram: https://t.me/gergenshin
- Youtube: https://www.youtube.com/@gergenshin
- Яндекс Дзен: https://dzen.ru/gergen
- Официальный сайт: https://www-genshin.ru







