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
Вышел 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
​​SQLCheck | Оптимизируем запросы

Мало кто задумывается о затратности / оптимальности того или иного SQL-запроса при верстке. Скорее уж потом, когда приходят счета за облачную БД или прилетает от тимлида на код-ревью.

SQLCheck — статический анализатор, который автоматически выявляет распространённые антипаттерны (рекурсии, отсутствие первичного ключа, SELECT * и многие другие).

Доступен в РФ: да
Цена: бесплатно
@prog_tools
👍32
​​django-silk | Профилирование HTTP- и SQL-запросов

Инструмент «перехватывает» запросы и ответы, собирая детальную статистику:
— длительность выполнения;
— заголовки, тела запросов / ответов;
— таблицы-источники.

Также поддерживаются ручное профилирование блоков кода через декораторы и контекстные менеджеры, динамическое профилирование функций. Хороший способ найти узкие места производительности в вашем Django-проекте.

#инструмент
@zen_of_python
👍2🙈1
Вопросы подписчиков

Zen of Python поддерживает новоприбывших (и не только) в особой рубрике. Как это работает:

— Спрашивайте что угодно (в комментариях под этим постом), связанное с Python. Здесь нет плохих вопросов!
— Сообщество вас поддержит. Самые интересные вопросы мы разберём в отдельном посте.

#обсуждение
@zen_of_python
👍2
И жнец, и на дуде игрец, знакомо?
Спасибо @fobyphill за идею мема :)
#кек
@zen_of_python
10
Придумайте смешную подпись к фото, но так, чтобы это относилось к языку программирования Python.

#кек #обсуждение
@zen_of_python
😁4
Тоже поймали себя на том, что положение Python в этой сетке устраивает?
#кек
@zen_of_python
Это что, первая конференция для лидов и менеджеров от Авито Тех?

Да! avito.tech.conf пройдёт 17 октября в Москве и онлайн.

В программе — доклады про управление командами и процессами от экспертов Авито, интерактивные зоны, где можно прочувствовать их менеджерскую культуру, практические воркшопы и море возможностей для нетворка с лидами из крупных IT-компаний.

Темы:
— лидерство и развитие до C-level;
— AI и то, как он меняет роль техруководителей и управление командами;
— адаптивность и процессы в меняющемся мире;
— люди и выстраивание эффективных отношений с командами.

Звучит как событие, которое точно стоит добавить в календарь.
Регистрируйтесь по ссылке — места ограничены.

Реклама. ООО «Авито Тех» Erid 2VtzqwgnGxD
А розовые образования вообще навайбкодили
p.s. Это из Босха
#кек
@zen_of_python
👍3😁1
​​Python снова № 1 в рейтинге ЯП, но...

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

#факт
@zen_of_python
1👍1🌚1
Программирование на Python с помощью GitHub Copilot и ChatGPT

Ну что ж, приехали, книга по вайб-кодингу... В этом издании от авторов Портера и Зингаро вы узнаете, как:
— настраивать ИИ-расширения для разных IDE;
— составлять ТЗ-промт, в том числе декомпозировать задачи;
— проектировать функции;
— делегировать тесты нейронкам и многое другое.

NB! Zen of Python призывает новичков осваивать базу, чтобы вы понимали, что вайбкодите.

#обучение #книга
@zen_of_python
😢42😁21
Нестандартные интерфейсы на Python: как вставить кнопки, как на пульте ТВ?

А что если ваш UI должен содержать кнопки нестандартной формы? Как на пульте ТВ / игровом джойстике, к примеру. Tkinter, к примеру, такое не умеет.

Один австралийский разработчик решил эту задачу, написав библиотеку GIMPy-Widget-UI. Библиотека позволяет проектировать в графическом редакторе такие нестандартные элементы и делать их интерактивными с минимальным объёмом кода.

#инструмент
@zen_of_python
Френдли фаер: наши привычки, которые медленно, но верно бьют по суставам и мышцам

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

— Держать телефон между ухом и плечом.
— Рюкзак или сумка всегда на одной стороне.
— Стоять, перенося вес только на одну ногу.
— Сидеть, поджимая ногу под себя.
— Скрещивать ноги за столом или закидывать одну на другую.
— Носить кроссовки без поддержки пятки и свода (особенно дешёвые тряпочные).
— Долго сидеть, положив локоть на стол и опираясь на подбородок.
— Спать всё время на одном боку в одной позе.
— Работать за ноутбуком, постоянно смотря чуть вниз.
— Часто носить тяжёлые пакеты «в одну руку».

Всё это со временем даёт защемления, перекосы и хронические боли. Так что позаботьтесь, чтобы убрать их из быта.

#суставы #советы
65👎2🕊1
«Я перестал думать»: чем опасен ИИ и вайб-кодинг для разработчиков

Один опытный разработчик предупредил новичков:

Лёгкость, с которой ИИ решает задачи, постепенно стирает ваше понимание процесса. Возникает дофаминовая ловушка, почти как при бессмысленном скроллинге ленты соцсетей — быстрое «удовольствие» без усилий и без реального роста.


Что делать неофиту в эпоху вайб-кодинга, чтобы вырасти в настоящего профи — смотрите в статье.

#обучение
@zen_of_python
👍53👎2
api-design.pdf
210.9 KB
Шпаргалка для пишущих свой API

Некоторым из нас приходится писать собственные интерфейсы, и при развитии такого приложения стоит задумываться не только об очередном методе, но и про:
— авторизацию;
— разграничение доступа на основе ролей (RBAC);
— метрики производительности;
— тестирование и прочие аспекты

В приложенной шпаргалке как раз об этом.

#обучение
@zen_of_python
👎4🔥3🤔21
detroit | Level Up для вашего dataviz'а

Если привычные столбчатые диаграммы и пай-чарты уже не забавляют, попробуйте питоническую реализацию d3js — небезызвестного тула для построения нетривиальных графиков. Как минимум познаете еще один вид графика, это обещаем.

#инструмент
@zen_of_python
👍21🔥1