Zen of Python
20.1K subscribers
1.29K photos
179 videos
36 files
3.3K links
Полный Дзен Пайтона в одном канале

Разместить рекламу: @tproger_sales_bot

Правила общения: https://tprg.ru/rules

Другие каналы: @tproger_channels

Сайт: https://tprg.ru/site

Регистрация в перечне РКН: https://tprg.ru/xZOL
Download Telegram
Смысл жизни по Монти Пайтону (1983)

Можно сколько угодно смотреть мемы про питонов, но язык назван в честь комиков Monty Python.

Если вам нужен фильм на выходные, и вы хотите знать, чем же так юмористы вдохновили создателя ЯП Гвидо ван Россума, посмотрите одну из их шедевральных полнометражек — «Смысл жизни по Монти Пайтону».

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

#факт
@zen_of_python
❤‍🔥3😱1
Вышел Django 6.0 (альфа-версия)

17 сентября 2025 года команда Django представила шестую версию фреймворка. Это новый крупный релиз, в котором есть несколько фундаментальных улучшений.

Поддержка новых версий Python

🔘 Django 6 официально поддерживает Python 3.12 и 3.13;
🔘 Поддержка Python 3.10 и 3.11 прекращена.


Поддержка CSP

Content Security Policy (CSP) — это механизм безопасности веб-приложений, который через специальные HTTP-заголовки ограничивает, какие скрипты, стили и ресурсы может загружать и выполнять браузер, защищая от XSS и похожих атак.

Ранее для CSP приходилось ставить сторонние пакеты. Теперь же:

🔘CSP встроен в ядро Django;
🔘Поддерживаются nonce-атрибуты для защиты inline-скриптов;
🔘Настройка выполняется через middleware и шаблонные процессоры;

Это сократит ваш requirements.txt и обеспечит больше безопасности «из коробки».


Фоновые задачи

Одно из самых ожидаемых нововведений: встроенная система фоновых задач. Новый декоратор @task позволяет превращать любую функцию в асинхронное задание.

🔘 ImmediateBackend — выполняет задачу сразу (удобно для разработки)
🔘 DummyBackend — добавляет задачу в очередь, но не исполняет (для тестирования логики)

В будущем планируются интеграции с реальными брокерами (Postgres, Redis, RabbitMQ).


Template Partials: переиспользуемые компоненты
Фронтенд-разработчикам понравится. Новый механизм partials:

🔘 Позволяет определять фрагменты шаблона через partialdef;
🔘 Поддерживает параметры и повторное использование в циклах и разных местах страницы;
🔘 Устраняет дублирование кода, упрощает дизайн-системы на Django Templates.

Это шаг в сторону компонентного подхода, знакомого пользователям React / Vue, но в экосистеме Django.


Другие изменения
🔘 В циклах теперь можно использовать forloop.length, чтобы узнать размер итерации (ранее были только forloop.counter, forloop.first, forloop.last и т.п.)
🔘 Более корректная работа с Unicode, MIME-типами и вложениями в емейлах;
🔘 Обновления для PostgreSQL и других баз данных;
🔘 Традиционные улучшения производительности и совместимости;
🔘 Альфа-релиз означает feature freeze: новые возможности добавлены, впереди тестирование и исправление багов.

#факт
@zen_of_python
Please open Telegram to view this post
VIEW IN TELEGRAM
👍81
Что нового в Python 3.14: разбираем главные изменения

В статье на Tproger рассказали о ключевых нововведениях Python 3.14:
— t-строки (строки-шаблоны с префиксом t), которые не вычисляются сразу, а дают разработчику контроль над подстановкой значений;
— отложенные аннотации типов, которые вычисляются только при первом доступе, что решает проблемы с циклическими импортами;
— новые методы pathlib (copy, move) и другие новшества.

#факт
@zen_of_python
PEP 804 | Про разные зависимости в разных ОС

Новый Python Enhancement Proposal вводит механизм мэппинга внешних зависимостей для разных операционок.

Пример

Если пакет A требует внешнюю библиотеку zlib, в pyproject.toml указывают, например, dep:generic/zlib. С помощью маппингов можно получить, что на Debian это zlib1g-dev, на Fedora — zlib-devel, или в conda — zlib. Инструмент выдаст команду в зависимости от текущей экосистемы:


sudo apt install zlib1g-dev


или


conda install zlib


Дабы не делать пост уж слишком лонгридом, для просмотра схемы мэппинга переадресуем вас в соответствующий раздел PEP.

p.s. На изображении гипотетический мэппинг для conda-forge.

#факт
@zen_of_python
4
​​Python снова № 1 в рейтинге ЯП, но...

IEEE Spectrum (популярный в США журнал для инженеров всех направлений) опубликовал рейтинг языков программирования 2025 года, и Python снова оказался на первом месте. Авторы рейтинга отмечают, что привычные способы измерять популярность перестали работать. Запросов на форумах вроде Stack Overflow — лишь 22% от прежнего уровня, ведь теперь разработчики задают вопросы напрямую ИИ. Авторы отмечают, что роль программиста меняется — важнее становятся архитектура, алгоритмы и интеграция систем, а не знание синтаксиса. При этом новым языкам всё труднее пробиваться, потому что LLM-модели тяготеют к уже распространённым инструментам.

#факт
@zen_of_python
1👍1🌚1
Почему Python так популярен в 2025-м году?

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


Что делает Python таким популярным?

🔘Легкость старта и понятный синтаксис
Одним из главных преимуществ с момента создания остаётся его читаемость и простота — код Python часто выглядит ближе к псевдокоду, чем к «машинной» записи. Это позволяет разработчикам сосредоточиться на логике, а не на деталях синтаксиса. Для новичков это часто первый язык программирования, с которым они знакомятся, — из-за низкого порога входа. Этот «эффект знакомства» закрепляет Python как язык выбора, особенно в образовательной и научной среде.

🔘Ключевая роль в AI, ML и науке о данных
Python давно прочно обосновался в экосистеме машинного обучения, искусственного интеллекта и обработки данных. В отчёте JetBrains «The State of Python 2025» указано, что примерно 41% разработчиков используют Python специально для задач машинного обучения. Широкий набор библиотек и фреймворков: PyTorch, TensorFlow, Keras, scikit-learn, Hugging Face Transformers — все они предоставляют зрелые, постоянно развивающиеся инструменты для исследователей и продакшн-инженеров.

🔘Универсальность: от скриптов до крупных систем
Python используется в самых разнообразных задачах:
— Веб-разработка: популярные фреймворки (Django, Flask, FastAPI) позволяют строить как простые приложения, так и масштабные сервисы;
— Автоматизация и инфраструктурные скрипты: благодаря лёгкости запуска, большому выбору библиотек и встроенной поддержке многих протоколов и форматов;
— Инструменты разработки, прототипы, доказательство концепции (POC): Python часто выбирают тогда, когда нужно быстро создать рабочее решение и проверить идею;
— Научные вычисления и инженерные задачи: благодаря библиотекам как NumPy, SciPy, Sympy и др.

Такой спектр применения делает Python «языком на все случаи», что снижает риск переключения на другой язык при росте проекта.

🔘Сообщество, документация и экосистемный эффект
Невозможно недооценивать роль сообщества в успехе Python:
— Огромное количество библиотек и фреймворков, созданных сообществом, часто с открытым исходным кодом;
— Качественная документация, туториалы, обсуждения: многие проблемы уже задокументированы, многие вопросы обсуждены на форумах, в блогах и на Stack Overflow.

Эффект «чем больше пользователей — тем больше инструментов — тем больше новых пользователей»: эта положительная обратная связь укрепляет позиции языка.

🔘Совместимость, обратная совместимость и эволюция
Python исторически стремится к обратной совместимости: код, написанный на старых версиях, часто может работать на новых с минимальными правками. Это снижает «технический долг» и барьеры для обновлений. К тому же новые версии языка приносят прирост производительности и оптимизации без значительного изменения синтаксиса. В отчёте указано, что многие разработчики просто не меняют версии, потому что текущая версия «удовлетворяет все нужды» — 53%.

Тем не менее, повышение производительности и оптимизации — весомый аргумент в пользу перехода, особенно для критичных к скорости проектов.

#факт
@zen_of_python
Please open Telegram to view this post
VIEW IN TELEGRAM
2
Python 3.14 на 27% быстрее предшественников

Сразу после выхода этой минорной версии языкового пакета с поддержкой free-threading (многопоточности без глобальной блокировки GIL), один разработчик провел тесты скорости. В подборку сравнения попали CPython 3.9–3.14, PyPy 3.11, Node.js 24 и Rust 1.9. Их сравнивали при рекурсивном вычислении чисел Фибоначчи и сортировке пузырьком. Подробнее о результатах в статье.

#факт
@zen_of_python
🔥82❤‍🔥1