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

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

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

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

По рекламе: @proglib_adv
РКН: https://gosuslugi.ru/snet/67b885cbd501cf3b2cdb5b36
Download Telegram
Что выведет код?
Anonymous Quiz
76%
30
13%
10
4%
40
7%
Error
🤔8👍2😢21
This media is not supported in your browser
VIEW IN TELEGRAM
🏃‍♀️ Новый поток курса — собери своих AI-агентов

7 октября стартует второй поток курса «AI-агенты для DS-специалистов».
За 5 недель вы научитесь собирать агентов, которые уже сейчас будут помогать бизнесу.

В кружке выше Максим Шаланкин, наш преподаватель, рассказывает подробнее — включай, чтобы не пропустить.

👉 Записаться на курс
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3👾1
🔥 10 Python-библиотек, которые должен знать каждый AI Data Scientist в 2025

Сохраняйте как шпаргалку — это полноценный роадмап библиотек, без которых сегодня не построить серьёзные AI/ML проекты.

1️⃣ LangChain — основа для LLM-агентов (reasoning, память, инструменты, API).

2️⃣ LangGraph — DAG + LangChain: условная логика, мультиагентные пайплайны.

3️⃣ Docling — извлечение данных из PDF, контрактов, отчётов.

4️⃣ OpenAI Python SDK — доступ к GPT-5, GPT-4o, DALL·E, Whisper и embeddings.

5️⃣ Markitdown — конвертация PDF/Word/Excel/HTML в Markdown.

6️⃣ Streamlit — быстрые AI-дашборды без фронтенда.

7️⃣ FastAPI — стандарт для продакшн-сервисов и AI-бэкендов.

8️⃣ ChromaDB — векторная БД для RAG-агентов и быстрого поиска.

9️⃣ FAISS — быстрый поиск по embedding'ам для семантического поиска и RAG.

🔟 AI Data Science Team — набор AI-агентов для типовых ML-задач (скоринг, анализ рисков).

📌 Эти библиотеки закрывают весь стек задач: от извлечения данных до построения RAG-систем и деплоя моделей.
Сохраняйте, чтобы не потерять!

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

#буст
Please open Telegram to view this post
VIEW IN TELEGRAM
12👍6🔥4🤔1
➡️ Obstore — быстрый и простой Python-интерфейс для облачного хранилища

Obstore — лёгкая библиотека Python для работы с объектным хранилищем (S3, GCS, Azure) с минимальным API и производительностью на базе Rust.

Фичи:
— Поддержка потоковой передачи: загрузка, выгрузка, листинг
— Минимальный интерфейс (~12 методов) и async-версии
— Полная поддержка типов (type hints)
— Гибкая аутентификация, включая кастомные провайдеры

Пример:
from obstore.store import S3Store

url = "s3://sentinel-cogs/sentinel-s2-l2a-cogs/12/S/UF/2022/6/S2A_12SUF_20220601_0_L2A"
store = S3Store.from_url(url, region="us-west-2", skip_signature=True)

print([obj["path"] for obj in store.list_with_delimiter()["objects"]])

thumbnail = store.get("thumbnail.jpg").bytes()
with open("thumbnail.jpg", "wb") as f:
f.write(thumbnail)


Установка:
pip install obstore
# или
conda install -c conda-forge obstore


📱 Репозиторий

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

#буст
Please open Telegram to view this post
VIEW IN TELEGRAM
3👍3🔥3
🔍Тестовое собеседование на Middle Python в четверг с разработчиком из Авито

28 августа(в четверг) в 19:00 по мск приходи онлайн на открытое собеседование, чтобы посмотреть на настоящее интервью на Middle Python-разработчика.

Как это будет:
📂 Даня, старший разработчик в Авито, будет задавать реальные вопросы и задачи разработчику-добровольцу
📂 Даня будет комментировать каждый ответ респондента, чтобы дать понять чего от вас ожидает собеседующий на интервью
📂 В конце можно будет задать любой вопрос Дане

Это бесплатно. Эфир проходит в рамках менторской программы от ШОРТКАТ для Java-разработчиков, которые хотят повысить свой грейд, ЗП и прокачать скиллы.

Переходи в нашего бота, чтобы получить ссылку на эфир →
@shortcut_py_bot

Реклама.
О рекламодателе.
Please open Telegram to view this post
VIEW IN TELEGRAM
👏3👍1
Please open Telegram to view this post
VIEW IN TELEGRAM
😁19👍4💯1
🏐 Генерация PDF и изображений из HTML в Python

PlutoPrint — это библиотека на Python для преобразования HTML/XML в качественные PDF и изображения.

Отличный инструмент для отчётов, инвойсов, билетов или визуализаций.

Что умеет PlutoPrint:
— Экспорт в PDF или PNG напрямую из HTML/URL
— Поддержка частичного экспорта (диапазоны страниц, реверс)
— Масштабирование и настройка размеров
— Генерация графиков через Matplotlib
— Работа через CLI или API

Установка:
pip install plutoprint


Пример: PDF из HTML
import plutoprint

book = plutoprint.Book(plutoprint.PAGE_SIZE_A4)
book.load_url("hello.html")
book.write_to_pdf("hello.pdf")


📱 Репозиторий

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

#буст
Please open Telegram to view this post
VIEW IN TELEGRAM
7👍3🔥3🤔1
Мы сделаем вам предложение, от которого невозможно отказаться 🤌

Вы покупаете себе курс «Математика для Data Science» от преподавателей ВМК МГУ, а мы дарим второй такой же курс вашему другу.

Предложение действует только до 1 сентября. Ничего личного, просто математика.

👉 Принять предложение
😢2👍1
🚀 Новое предложение для Python: TypedDict с закрытыми ключами и поддержкой extra_items

TypedDict давно используется для строгой типизации словарей, где известны ключи и их типы. Но до сих пор у него было два ограничения:
➡️ Нельзя было запретить лишние ключи (любая TypedDict допускала дополнительные поля).
➡️ Нельзя было явно указать тип для дополнительных ключей (например, разрешить только строки).

Новый PEP предлагает решить эти проблемы с помощью двух параметров:
➡️ closed=True — создаёт «закрытый» TypedDict, в котором не может быть лишних полей.
➡️ extra_items=... — позволяет указать общий тип для дополнительных ключей.

Как это решение поможет:
— Закрытые TypedDict’ы делают возможным более точный вывод типов для .items() и .values().
— Теперь становится безопасным использовать in для type narrowing.
— API-интерфейсы и legacy-код можно описывать гибко: часть ключей фиксированы, остальные — строго заданного типа.

Пример:
class Movie(TypedDict, closed=True):
name: str
director: str

m: Movie = {"name": "Blade Runner", "director": "Ridley Scott"}
m2: Movie = {"name": "Blade Runner", "year": 1982} Ошибка


А вот пример с extra items:
class MovieBase(TypedDict, extra_items=int):
name: str

movie: MovieBase = {"name": "Blade Runner", "year": 1982}


В итоге разработчики смогут балансировать между строгой типизацией и гибкостью — без костылей вроде --disable-error-code=typeddict-unknown-key.

🔗 Подробнее можно почитать в PEP

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

#буст
Please open Telegram to view this post
VIEW IN TELEGRAM
5👍5🔥2
📢 Какой сетап идеально подойдёт для разработки AI-агента?

Голосуйте за свой вариант и пишите в комментариях, в каком режиме вы реально кодите.

❤️ — 1
👍 — 2
⚡️ — 3
👏 — 4
🔥 — 5
🎉 — 6
😁 — 7
😍 — 8
🤩 — 9

Какой бы сетап ни был, без AI-агентов в 2025 всё равно далеко не уедешь.

👉 Научим, как строить агентов, которые кодят с тобой
🎉22😍1064👍4🔥4🤩3😁1
🚀 Redis + Python: быстрый старт для разработчиков

Redis (Remote Dictionary Server) — это in-memory хранилище данных, которое можно использовать как:
базу данных
кэш
брокер сообщений или очередь

Главное отличие — данные хранятся в RAM, а не на диске → операции чтения/записи работают за миллисекунды.

✔️ Redis + Python: как подключиться

1⃣ Установить библиотеку:
pip install redis


2⃣ Подключение и тест:
import redis

# подключение
r = redis.Redis(host='localhost', port=6379, db=0)

# запись и чтение
r.set("key", "hello redis")
print(r.get("key")) # b'hello redis'


3⃣ Дальше можно использовать Redis для:
🔘 кэширования результатов запросов
🔘 хранения сессий пользователей
🔘 обработки очередей задач
🔘 мониторинга

Подробнее в статье с примерами

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

#буст
Please open Telegram to view this post
VIEW IN TELEGRAM
7👍2🔥1
😃 attrs: простота написания Python-классов без бойлерплейта

attrs — это Python-пакет, который снимает рутину при написании классов и автоматически реализует «ду́ндер»-методы (__init__, __repr__, __eq__ и др.).

📌 Используется даже NASA в миссиях на Марс с 2020 года!

Основная цель — писать лаконичный и корректный код без потерь производительности.

Пример:
from attrs import asdict, define, make_class, Factory

@define
class SomeClass:
a_number: int = 42
list_of_numbers: list[int] = Factory(list)

def hard_math(self, another_number):
return self.a_number + sum(self.list_of_numbers) * another_number

sc = SomeClass(1, [1, 2, 3])
print(sc) # SomeClass(a_number=1, list_of_numbers=[1, 2, 3])
print(sc.hard_math(3)) # 19
print(asdict(sc)) # {'a_number': 1, 'list_of_numbers': [1, 2, 3]}


attrs автоматически добавляет:
✔️ читаемый __repr__
✔️ методы сравнения
✔️ __init__ и управление аргументами
✔️ фабрики значений (Factory)
✔️ конструктор классов на лету (make_class)

📱 Репозиторий

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

#буст
Please open Telegram to view this post
VIEW IN TELEGRAM
5🔥3👍1