Библиотека питониста | Python, Django, Flask
40.3K subscribers
2.81K photos
79 videos
51 files
4.4K links
Все самое полезное для питониста в одном канале.

Список наших каналов: https://t.iss.one/proglibrary/9197

Курс по ML: https://cl

Для обратной связи: @proglibrary_feeedback_bot

По рекламе: @proglib_adv
РКН: https://gosuslugi.ru/snet/67b885cbd501cf3b2cdb5b36
Download Telegram
🆕 Django 5.2.5 и Python 3.13.6 — свежие релизы

6 августа 2025 вышли новые версии сразу двух ключевых инструментов для Python-разработчиков.

✔️ Django 5.2.5

Обновление исправляет несколько ошибок из прошлых версий:
— Исправлен баг с использованием стратегии UNNEST в QuerySet.bulk_create() с внешними ключами (регрессия из 5.2.1).
— Исправлено падение при фильтрации по составному первичному ключу с кортежем, содержащим выражения.
— Исправлено падение при валидации моделей с GeneratedField или сложными constraints из Q и Case.
— Добавлена совместимость с docutils 0.22.
— Исправлено падение при работе с ManyToManyField в моделях с составным PK.

📄 Читать релиз-ноутсы Django 5.2.5

✔️ Python 3.13.6

Это шестой maintenance-релиз Python 3.13, включающий:
— ~200 багфиксов и улучшений сборки
— Обновления документации
— Мелкие оптимизации

📄 Полный список изменений

🐸 Библиотека питониста

#свежак
Please open Telegram to view this post
VIEW IN TELEGRAM
👍95
🔥 Успей поднять квалификацию по выгодной цене!

Только до 17 августа у вас есть последняя возможность купить наши курсы по старым ценам.

🔹 Математика для Data Science:

— Базовый: (сейчас) 26 399₽(будет) 33 900₽
— Ультра: 35 199₽44 900₽
— VIP: 59 829₽75 900₽ (выгода больше 16 000₽!)

🔹 Программирование на Python: 24 990₽32 900₽
🔹 Алгоритмы и структуры данных: 31 669₽39 900₽
🔹 Архитектуры и шаблоны проектирования: 24 890₽32 900₽
🔹 AI-агенты для DS специалистов: 54 000₽59 000₽
🔹 Основы IT для непрограммистов: 14 994₽19 900₽
🔹 Базовые модели ML: 6 990₽9 900₽

Важно: Курсы из линейки Frontend Basic полностью снимаются с продажи. 17 августа — буквально последний день, когда их можно будет приобрести.

Успей купить до повышения — осталось 4 дня!

👉 Зафиксировать цену и начать учиться
2
Please open Telegram to view this post
VIEW IN TELEGRAM
😁30❤‍🔥72🤔1
📌 Промпт дня: для реализации конкретного алгоритма

Иногда нужно быстро вспомнить или протестировать алгоритм.

С таким промптом код получится чистым, а структура — понятной:
Implement a [name of algorithm] in [programming language]. 
Please include:
1. The main function with clear parameter and return types
2. Helper functions if necessary
3. Time and space complexity analysis
4. Example usage


Зачем использовать:
— Чёткая структура запроса повышает шанс получить корректную и читаемую реализацию.
— Анализ сложности помогает оценить эффективность алгоритма.
— Пример использования облегчает интеграцию кода в проект.

Пример:
Implement a Dijkstra’s algorithm in Python. 
Please include:
1. The main function with clear parameter and return types
2. Helper functions if necessary
3. Time and space complexity analysis
4. Example usage


🐸 Библиотека питониста

#буст
Please open Telegram to view this post
VIEW IN TELEGRAM
5👍2😁2
🚀 Главная ошибка новичка в ML — строить звездолёт вместо велосипеда

Многие сразу хотят свою Midjourney, но в итоге получают только выгорание.

Успех начинается с «велосипеда»: научитесь предсказывать цены или классифицировать отзывы. Освойте базу, а уже потом стройте «звездолёты».

Наш курс «ML для старта в Data Science» — это и есть тот самый правильный старт от простого к сложному.

👉 Начните правильно

Берёте курс «ML для старта» до конца недели — Python в подарок.

А 21 августа пройдет бесплатный вебинар с Марией Жаровой: узнаете, какие проекты качают скилл, а какие качают ваши нервы.

А какой самый сложный проект вы брались делать в самом начале? 🫢
3😁1
🤝 Истории подписчиков: знакомство с Python

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

Вот три из них ⬇️

1️⃣ Первое свидание с Python:
Я учил Python… прямо во время написания C++ модуля.
Задача — сделать часть C++ кода вызываемой из Python. До того, как я вообще знал Python.
SWIG помог, но ощущения были как при операции на открытом сердце человеку, с которым ты только что пошёл на первое свидание.


2️⃣ Название решает:
Мой первый Python-скрипт назывался python.py. Он не работал, и я несколько часов ломал голову, пока не написал свой первый вопрос на Stack Overflow.
Там спросили: «А вы точно не назвали его python?» — и помогли.
Теперь понимаю, насколько это было глупо… но для новичка это казалось отличным названием.


3️⃣ После R — культурный шок:
Я пришёл из R и был в бешенстве, что скобки и фигурные, и квадратные в Python значат совсем разные вещи.
А ещё меня бесило, что нет функции grep.


💬 А как у вас началось знакомство с Python?

🐸 Библиотека питониста

#междусобойчик
Please open Telegram to view this post
VIEW IN TELEGRAM
😁51
✔️ 2 минималистичные библиотеки, которые делают асинхронность в Python проще

В Python всё чаще приходится выбирать между sync и async реализациями (а иногда ещё и писать обе).

Если вам надоело дублировать код или разбираться в тёмных углах asyncio, вот две очень лёгкие и практичные альтернативы.

🙂 transfunctions — одна функция → три разных поведения

С помощью шаблона вы пишете *один* фрагмент кода, а библиотека генерирует:
— обычную функцию (func())
— async-версию (await func())
— генератор (for _ in func():)

Пример:
@transfunction
def template():
print('so, ', end='')
with sync_context:
print("it's just usual function!")
with async_context:
print("it's an async function!")
with generator_context:
print("it's a generator function!")
yield


Хотите всё автоматически — используйте @superfunction, и функция сама поймёт, как её вызвали:
~my_superfunction()         # обычный вызов
await my_superfunction() # async-исполнение
for x in my_superfunction(): # генератор


🙂 tinyio — tiny event loop (≈300 строк) вместо asyncio

Если вы когда-нибудь думали «asyncio слишком сложный для такой простой задачи» — эта библиотека для вас.

tinyio — микроскопический event loop с безопасной обработкой ошибок и простейшим API:
def slow_add_one(x):
yield tinyio.sleep(1)
return x + 1

def foo():
a, b = yield [slow_add_one(3), slow_add_one(4)]
return a, b

loop = tinyio.Loop()
print(loop.run(foo())) # → (4, 5)


— вместо await используется yield
— если ошибка случается в одной корутине — автоматически отменяются все, чтобы не было скрытого «зомби»-кода
— нет Task, Future, TaskGroup — только Loop, sleep, run_in_thread

🙂 Установка

pip install transfunctions
pip install tinyio


🐸 Библиотека питониста

#буст
Please open Telegram to view this post
VIEW IN TELEGRAM
16👍6🌚1
🔥 metap — новый слой для метапрограммирования в Python

Вышел metap, простой и мощный инструмент для метапрограммирования, давно востребованный Python-разработчиками.

Что умеет metap:
Автоматизация повторяющихся шаблонов кода
Генерация функций и структур «на лету»
Глубокая инспекция и модификация объектов программы

С помощью metap можно писать меньше повторяющегося кода и больше сосредотачиваться на логике.

👉 Полное руководство, примеры и документация уже доступны:
https://clc.to/ZOYW7g

🐸 Библиотека питониста

#буст
Please open Telegram to view this post
VIEW IN TELEGRAM
6👍4
🧠 Выбор первого ML-проекта: чеклист против выгорания

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

Мини-чеклист первого проекта:

1. Понятные данные — без «я нашёл датасет в даркнете, но он на суахили».

2. Измеримая метрика — «точность 92%», а не «ну вроде работает».

3. Объяснимый результат — чтобы не-техлид понял, почему модель ругается на спам.

Наш курс «ML для старта в Data Science» — старт от простого к сложному: теория → практика → проверка → проект в портфолио.

👉 Начать свой путь в Data Science

Оплатите курс по ML до 17 августа — курс по Python в подарок.

📅 Бесплатный вебинар с Марией Жаровой — 21 августа: как выбирать проекты, которые доводят до оффера, а не до психотерапевта.

💾 Сохрани, чтобы не потерять, когда будешь готов(а) начать
2
😎 Вы просили — мы сделали. Самый долгожданный анонс этого лета!

Мы открываем набор на второй поток курса «AI-агенты для DS-специалистов»!

На курсе мы учим главному навыку 2025 года: не просто «болтать» с LLM, а строить из них рабочие системы с помощью Ollama, RAG, LangChain и crew.ai.

📆 Старт потока — 15 сентября.

💸 Цена 49 000 ₽ действует только в эти выходные — до 17 августа. С понедельника будет дороже.

👉 Занять место
👍2
📱 Новости и релизы Python‑пакетов за последние 7 дней

🔥 Важные обновления популярных пакетов
modin 0.35.0 — drop-in замена для Pandas, ускоряет обработку данных без изменения кода.
django-allauth 65.11.0 — свежий релиз библиотеки для авторизации и социальных логинов.
semgrep 1.132.0 — статический анализатор кода с фокусом на безопасность.
virtualenv 20.34.0 — обновление инструмента для создания изолированных окружений.
pandera 0.26.0 — удобная валидация датафреймов и таблиц.
dvc 3.62.0 — управление данными и экспериментами в ML-проекте.

📰 Новости
Microsoft представила собственный Python-драйвер для MS SQL — по бенчмаркам он быстрее pyodbc.
Excel научился анализировать изображения через Python — прямо в ячейках можно вызывать Python-код и извлекать объекты с картинок.
Minimal PDF Compress 1.6 — лёгкий GUI для Ghostscript (Windows), сжимает PDF без сторонних сервисов.
TIOBE (август 2025): Python снова растёт, …а Perl неожиданно тоже.

✍️ Статьи недели
От консоли к GUI: сапёр на Python.
Как написать bzip2-архиватор на Python (разбор BWT).
Асинхронные тесты для UI и API на Python: проблемы и выводы.
Python Generators: методы send, throw, close.
XTools-py: универсальные утилиты для разработчика.
TY: ультра-быстрый type-checker.

🐸 Библиотека питониста

#свежак
Please open Telegram to view this post
VIEW IN TELEGRAM
👍43🔥2
🔥 Последняя неделя, чтобы забрать курс по AI-агентам по старой цене!

Пока вы тестируете Copilot, другие уже учатся строить AI-агентов, которые реально работают на бизнес. Хватит отставать!

Наш курс — это концентрат практики по LangChain и RAG. Улучшенная версия, доработанная по отзывам первого потока.

📆 Старт — 15 сентября.

💸 Цена 49 000 ₽ — только до 24 августа.

👉 Зафиксировать цену
🌚2👾2
💼 Топ-вакансий для питонистов за неделю

Team Lead Python, удалёнка

Fullstack developer (python), удалёнка

Senior Backend developer (Python), удалёнка

Senior/Team Lead Backend Engineer, удалёнка

Разработчик Python AI — до 200 000 ₽, удалёнка

Senior Python Backend Engineer — от 5 000 до 8 000 $, удалёнка

➡️ Еще больше топовых вакансий — в нашем канале Python jobs

🐸 Библиотека питониста
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1😁1
🫣 Хотите в Data Science, но боитесь высшей математики?

Хорошая новость: вам не нужно становиться математиком. Вам нужно освоить конкретные разделы, которые реально используются в работе и на собеседованиях.

Именно этому учат преподаватели ВМК МГУ на нашем курсе «Математика для Data Science».

Без лишней воды — только то, что нужно для:

успешного поступления в ШАД Яндекса;
прохождения собеседований уровня FAANG;
глубокого понимания ML-алгоритмов.

Это самый прямой путь к математическому фундаменту, на котором строится вся карьера в Data Science.

👉 Начните строить свою карьеру уже сегодня
3
Как избавиться от deepcopy и ускорить код в несколько раз

copy.deepcopy() удобно использовать, когда нужно получить полностью независимую копию сложного объекта.

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

🤔 На практике это легко превращается в проблему. Пример из жизни — копирование состояния агента (≈1000 объектов) занимало 25% времени работы программы.

➡️ Почему deepcopy медленный
— обходит всю вложенную структуру
— вызывает Python-уровневый код (__deepcopy__)
— использует memo-словарь для учёта общих ссылок
— аллоцирует память под каждый объект

В простом бенчмарке:
shallow copy   → 1x  
deepcopy → ~660x медленнее
pickle / json → ~100–500x медленнее


➡️ Как избежать deepcopy (без ломки логики)

1️⃣ Используйте shallow copy или пересоздание объекта

Если нужно изменить только один атрибут — проще создать новый экземпляр, передав поля явно, чем делать deepcopy + модификацию:
# вместо
m2 = deepcopy(m1); m2.bar = 5

# лучше
m2 = Model(bar=5, foo=m1.foo, ...)


2️⃣ Копируйте только то, что реально нужно менять

В Pydantic-AI ушли от:
messages = deepcopy(self._state.message_history)


к:
messages = list(self._state.message_history)
last = deepcopy(messages[-1])
messages[-1] = last


→ в итоге 180× быстрее

3️⃣ Не копируйте неизменяемые структуры

Строки, числа, кортежи — и так безопасны. Не создавайте дубликаты ради дубликатов.

4️⃣ Используйте copy-on-write или diff-подход

Вместо полной копии состояния — сохраните разницу (diff) или применяйте изменения лениво — только при первом реальном изменении.

5️⃣ Сериализация как альтернатива

Иногда быстрее склонировать структуру через json.dumps/loads или pickle. Но подходит только для чистых данных (без сокетов, файлов и т.п.)

6️⃣ Используйте встроенные copy-механики

— NumPy: arr.copy() — копирует чистый буфер памяти
— pandas: .copy() / .loc[:] — быстрее, чем deepcopy DataFrame

➡️ В двух словах:
deepcopy — мощь → но крайне дорогая
— Используйте deepcopy только если реально нужен полный независимый клон
— Во всех остальных случаях: поверхностная копия + модификация → намного быстрее

🐸 Библиотека питониста

#буст
Please open Telegram to view this post
VIEW IN TELEGRAM
👍74🔥4😁1
🚀 pyx — новый Python-native package registry от создателей Ruff и uv

Astral (команда, подарившая миру Ruff и uv) запускает pyx — пакетный реестр, созданный специально для Python.

Это не просто альтернатива PyPI. pyx — это ускоренный, безопасный и GPU-aware backend для uv, который:
➡️ оптимизирует установку даже тяжёлых библиотек (PyTorch, CUDA, FlashAttention и т.д.),
➡️ кеширует сборки между разработчиками (никто больше не пересобирает одно и то же на каждой машине),
➡️ защищает от внезапных падений из-за «сломавшегося» setuptools или зависимостей,
➡️ поддерживает приватные пакеты и удобную авторизацию.

💡 uv + pyx = ощущение того же wow, которое вы испытали, перейдя на uv в первый раз.

И самое интересное → это первый шаг в сторону Python-облака от Astral: единой платформы, которая будет ускорять и упрощать весь Python-пайплайн, а не только клиентские инструменты.

При этом всё, к чему вы привыкли (Ruff, uv, ty и др.) останется бесплатным и open-source.

📣 Сейчас pyx открыт только для ранних партнёров (Ramp, Intercom, fal), но можно записаться в waitlist.

🚩 Подробности

🐸 Библиотека питониста

#буст
Please open Telegram to view this post
VIEW IN TELEGRAM
10👍4🔥3
⚡️ Бесплатный вебинар — прогнозируем цены и не сходим с ума

21 августа в 19:00 МСК будет бесплатный вебинар с Марией Жаровой — экспертом в ML и Data Science.

Тема:
«Введение в машинное обучение: как спрогнозировать стоимость недвижимости».


Подробности рассказываю в гс выше — включай, чтобы не пропустить.
😁2👍1