и посмотреть медиа
Biblioteca de Pythonist: Python Django Flask
и посмотреть медиа
Todo lo útil para los desarrolladores de Python: Django, Flask y bibliotecas.
Todo lo útil para los desarrolladores de Python: Django, Flask y bibliotecas.
Canal integral para Pythonistas. Contiene selecciones de bibliotecas, guías sobre Django y Flask, ejemplos de código y consejos. Todo lo más necesario en un solo lugar para el trabajo eficiente y el desarrollo de aprendizaje web en Python.
WeakKeyDictionary: как хранить данные «рядом с объектом» без прямой записи в атрибуты Классический паттерн: хочется прикрепить доп. данные к объекту — делаешь obj._cache = .... Но у этого три проблемы: — не работает для built-in типов и slotted классов — имена атрибутов могут конфликтовать с другим кодом — атрибуты вылезают в vars() и других местах где не ждёшь 🔑 Решение — WeakKeyDictionary from weakref import WeakKeyDictionary import ast used_names_cache: WeakKeyDictionary[ast.Module, set[str]] = WeakKeyDictionary() def all_used_names(module: ast.Module) -> set[str]: try: return used_names_cache[module] except KeyError: pass names = set() # ... заполняем set used_names_cache[module] = names return names Данные живут «здесь», а не на объекте. Производительность O(1) как у обычного атрибута. Главное преимущество: как только объект перестаёт существовать в остальном коде — запись в словаре тоже удаляется автоматически. Нет утечек памяти. ⚠️ Почему не functools.cache? @cache def all_used_names(module): ... functools.cache хранит сильные ссылки на аргументы. Даже если module больше нигде не используется — кэш держит его живым и не даёт GC освободить память. 📋 Два условия для объекта Объект должен быть hashable — выполняется по умолчанию если не переопределён __eq__ без __hash__. Объект должен поддерживать weak reference — большинство user-defined классов поддерживают. Для slotted классов нужно явно добавить: class Train: __slots__ = ("__weakref__", "wheels", "engine") 📍 Навигация: Вакансии • Задачи • Собесы Библиотека питониста #буст
Открыть канал и посмотреть медиа🔥 Открытое занятие по AgentOps — курс стартовал! Сегодня в 19:00 по МСК пройдет первое занятие нового потока, на которое может прийти каждый. Оцените пользу нашего подхода на ретрансляции урока в VK! 👨💻 Спикер: Андрей Носов Тема: Архитектура управления: state machine для AI-агентов Будем разбираться, как использовать State machine в качестве главного оружия против стохастики (непредсказуемости) LLM. Что в программе: ● State machine: инварианты и терминальные состояния; ● Паттерны маршрутизации: Supervisor, ReAct, Plan-and-Solve; ● Детекция циклов и настройка аварийных выходов; ● Абстракция от модели: как сделать каркас, который переживет смену LLM/провайдера; ● Адаптация графов под ограничения локальных моделей; ● Версионирование графов и миграции стейта. Результат занятия: Вы поймете, как спроектировать надежный каркас агента с жестким контролем исполнения и переходов. 👉 Подписывайтесь на нашу группу ВКонтакте, чтобы не пропустить старт трансляции!
Открыть канал и посмотреть медиа😯 FastAPI Cloud вышел в публичную бету Деплой существующего FastAPI-приложения: uv run fastapi deploy Новое приложение: uvx fastapi-new uv run fastapi deploy 🚀 Что включено из коробки — HTTPS по умолчанию — автоматические TLS-сертификаты — Автоскейлинг — растёт с трафиком, scale to zero в разработке — Zero-downtime деплои — новые версии раскатываются постепенно — Авто-верификация — если что-то сломалось, остаётся последняя рабочая версия — GitHub интеграция — push в main = автодеплой, без CI-конфигов — БД из коробки — Neon (Postgres), Redis Cloud, Supabase в пару кликов — Логи, метрики, переменные окружения, кастомные домены — VS Code расширение ⚙️ GitHub Actions если нужно fastapi cloud setup-ci Команда сама создаёт deploy tokens, прописывает их как GitHub secrets и генерирует workflow файл. 🤖 Про агентов CLI спроектирован так чтобы AI-агенты могли работать с ним из терминала — деплоить, читать логи, обновлять переменные, дебажить — без кастомных интеграций. Поддержка JSON-вывода, явные параметры. Вместо стен YAML — одна команда fastapi deploy. Это и есть deployment surface для агентов. Ссылка на сайт 📍 Навигация: Вакансии • Задачи • Собесы Библиотека питониста #буст
Открыть канал и посмотреть медиа🎬 Как ИИ ускоряет разработку и где ломаются архитектуры Мы провели открытый вебинар, где разобрали реальные боли проектирования автономных систем. Ольга Лукьянова на практическом кейсе показала, как использовать ИИ-ассистентов для реальных задач. Вы просили запись встречи — она уже в открытом доступе! Что внутри: — Как с помощью ИИ быстрее разбираться в незнакомом коде и готовить пулл-реквесты; — Критерии выбора между одним агентом и мультиагентной системой; — Разбор популярных архитектурных ошибок и ограничений современных ИИ; — Практические рекомендации по проектированию и внедрению облачных агентов. 👉 Посмотреть полную запись можно тут: ● VK ● YouTube 🚀 Хотите пойти дальше открытого вебинара? Если вы готовы перейти от простых промптов к проектированию надежных, отказоустойчивых ИИ-систем, которые не сливают бюджет компании на API, приходите на курс AgentOps. Поток уже стартовал, но двери еще приоткрыты! 👉 Успеть на курс AgentOps
Открыть канал и посмотреть медиа📹 Что должен делать агент-оркестратор? Посмотрите короткий отрывок из вебинара с Дмитрием Юдиным, внутри концентрат инсайтов о ии-агентах. А если хотите погрузиться в тему с головой, у нас доступна и полная запись этого эфира. Готовы перейти от теории к практике и собрать свой первый продакшн-кейс? Прямо сейчас действует мощная акция «3 курса по цене 1»: 🔥 При покупке VIP-тарифа нового потока «Разработка ИИ-агентов» вы получаете в подарок хардкорный курс «AgentOps» + ещё один любой курс Академии на ваш выбор! Выгода в цифрах: два топовых курса по созданию и контролю агентов обойдутся вам всего в 134.000 ₽ вместо 263.000 ₽. Плюс третий курс бонусом (например, можно подтянуть математику для AI). Ваша чистая экономия — 129 000 ₽! Сомневаетесь, подойдет ли вам формат? Оставьте заявку и пройдите бесплатный демо-урок, чтобы протестировать платформу перед покупкой. 👉 Пройти демо-урок и забрать 3 курса по цене 1
Открыть канал и посмотреть медиаОПРОС: Ответьте на пару вопросов и получите промокод на все наши курсы! 🎁 Команда Prоglib.аcаdemy готовит к запуску новые продукты, и нам нужна ваша помощь. Мы хотим создавать обучение, которое будет решать ваши реальные карьерные задачи и бить точно в цель. Поделитесь своим опытом и ожиданиями, чтобы мы сделали наши курсы еще полезнее именно для вас! Заполнение анкеты займет буквально 2–3 минуты, а с нас — скидка на любой наш курс! 👉 Пройти опрос в Яндекс Формах и забрать промокод
Открыть канал и посмотреть медиа👍 classmethod, staticmethod или instance method: простое правило выбора Смотрите что метод реально использует: — нужен self → instance method — нужен cls, но не конкретный экземпляр → @classmethod — не нужно ни то ни другое → @staticmethod 🔵 Instance method — работа с состоянием объекта Всё что читает или меняет атрибуты конкретного экземпляра. Стандарт по умолчанию. 🟢 @classmethod — альтернативные конструкторы Python не поддерживает перегрузку init, поэтому когда нужно создать объект из разных источников — каждый способ становится classmethod: # из стандартной библиотеки date.today() date.fromtimestamp(1718539200) date.fromisoformat("2026-06-16") Все возвращают date, но стартуют из разного сырья. Ещё один хороший кейс — реестры и кэши на уровне класса: class Handler: _registry: dict[str, type["Handler"]] = {} @classmethod def register(cls, name: str, handler: type["Handler"]) -> None: cls._registry[name] = handler 🟡 @staticmethod — утилита без контекста Чистая функция которая живёт в классе для удобства неймспейса. Не трогает ни self ни cls: class Color: @staticmethod def hex2rgb(hex_value: str) -> tuple[int, int, int]: return tuple(int(hex_value[i:i+2], 16) for i in (1, 3, 5)) Сигнал: если staticmethod можно вынести на уровень модуля и ничего не сломается — возможно, так и стоит сделать. Это не плохой паттерн, просто честный вопрос. 📍 Навигация: Вакансии • Задачи • Собесы Библиотека питониста #буст
Открыть канал и посмотреть медиа⚠️ Уже завтра стартует курс AgentOps! Мы собрали на потоке сборную из мастеров IT-рынка. Практики из BigTech научат вас контролировать и отлаживать ИИ-агентов, чтобы они работали предсказуемо и не сливали бюджет на API. 🔥 Заберите 3 курса по цене 1: ● При покупке VIP-тарифа (осталось 4 места) нового потока «Разработка ИИ-агентов» получаете в подарок курс «AgentOps» + ещё один любой курс Академии (например, «Математика для разработки AI», чтобы глубже освоить направление). ● Три курса обойдутся вам всего в 134.000 ₽ вместо 263.000 ₽. ● Доступна удобная беспроцентная рассрочка, платеж можно разбить на несколько комфортных частей. Хотите прокачать свое портфолио продакшн-кейсом, но пока сомневаетесь? Пройдите наш бесплатный демо-урок, чтобы протестировать формат перед покупкой. 👉 Забрать 3 курса по цене 1 и получить демо-урок
Открыть канал и посмотреть медиа👍 ArchUnit для Python: архитектурные правила как юнит-тесты Python не заботится о том как вы организуете код. Нет компилятора который закричит когда route handler импортирует напрямую из слоя базы данных. Нет ошибки при циклической зависимости между модулями. Всё работало пока проект не вырос. А потом кто-то импортировал sqlalchemy прямо в Pydantic-схему — потому что так быстрее. ArchUnitPython решает это: архитектурные правила живут рядом с обычными тестами и запускаются в pytest. 🚫 Запретить зависимости между слоями from archunitpython import project_files, assert_passes def test_presentation_should_not_depend_on_database(): rule = ( project_files("src/") .in_folder("**/presentation/**") .should_not() .depend_on_files() .in_folder("**/database/**") ) assert_passes(rule) 🔄 Запретить циклические зависимости def test_no_circular_dependencies(): rule = project_files("src/").should().have_no_cycles() assert_passes(rule) Когда правило нарушается — тест падает с понятным сообщением. Никаких отдельных конфигов и команд. ✅ Что проверяет — направление зависимостей между слоями — циклические зависимости — нарушения именования — превышение размера файлов — внешние модули в неположенных местах pip install archunitpython 📍 Навигация: Вакансии • Задачи • Собесы Библиотека питониста #буст
Открыть канал и посмотреть медиаSolo los usuarios registrados pueden compartir su opinión.
¡Sé el primero en compartir tu experiencia con este recurso!