Python/ django
63.3K subscribers
2.25K photos
130 videos
48 files
3K links
по всем вопросам @haarrp

@itchannels_telegram - 🔥 все ит каналы

@ai_machinelearning_big_data -ML

@ArtificialIntelligencedl -AI

@datascienceiot - 📚

@pythonlbooks

РКН: clck.ru/3FmxmM
Download Telegram
⚡️ Pytest markers: ускоряем разработку и тестирование

Когда проект растёт — часть тестов становится медленной (ML-тренировка, GPU-инференс, интеграционные проверки).
Pytest позволяет помечать такие тесты и запускать только нужные группы.

В примере:
- @pytest.mark.fast — быстрые юнит-тесты
- @pytest.mark.slow — долгие тесты (например, обучение модели)
- @pytest.mark.gpu — тесты, требующие GPU

Команды:
# Запустить только быстрые
pytest -m fast

# Запустить всё, кроме slow
pytest -m "not slow"

Идеально, когда нужно:
- быстро прогнать код перед пушем
- запускать тяжёлые тесты по расписанию/в CI
- разделить ML-тесты по ресурсам (CPU/GPU)

Используйте маркеры — и ваша разработка станет быстрее и чище 🧪⚙️

#pytest #python #testing #mlengineering #unittesting #devtools
👍128🔥5
Изучили базу по Python и не знаете, как кодить еще лучше?
Пройдите бесплатный курс по настройке инструментов Python в Академии Selectel.

Рассказываем, что изучать после основ и как не зациклиться на типовых навыках на старте. В программе курса:

🔸 освоим Python-инструменты для упрощения работы с кодом: SonarLint, Myry и другие;
🔸 протестируем библиотеку Tkinter, чтобы создавать приложения с графическим интерфейсом;
🔸 расскажем, как парсить данные с веб-сайтов и закрепить полученные знания на практике.

Все материалы бесплатные. Проходите курс в комфортном темпе в Академии Selectel: https://slc.tl/xc1nq

Реклама. АО "Селектел". erid:2W5zFG6QH36
8😱1😢1
🧠 Дискретные диффузионные модели для генерации текста

Репозиторий предлагает аннотированную реализацию модели дискретной диффузии для генерации текста, основанную на архитектуре "baby GPT" от Андрея Карпаты. Используя подход денойзинга, модель восстанавливает и генерирует текст, обучаясь на примерах, таких как произведения Шекспира.

🚀 Основные моменты:
- Обучение на текстах с использованием дискретных диффузионных моделей.
- Параллельная генерация токенов вместо последовательной.
- Включает математическую основу и адаптацию существующих архитектур.
- Применение к различным наборам данных и настройкам модели.

📌 GitHub: https://github.com/ash80/diffusion-gpt

#python
8👍4🔥3
This media is not supported in your browser
VIEW IN TELEGRAM
Тестируй Python-код не «на ощупь», а через три уровня.

Сначала юнит-тесты для базовой логики, затем фикстуры для реального окружения (файлы, БД, HTTP-моки), и сверху — hypothesis для автоматического поиска скрытых багов.

Так тесты будут короткими, а покрытие и надёжность — максимальными.


import pytest
from hypothesis import given, strategies as st


# 1) Простой юнит-тест
def test_add():
assert add(2, 3) == 5


2) Фикстура для окружения (временный файл)
@pytest.fixture
def temp_file(tmp_path):
file_path = tmp_path / "data.txt"
file_path.write_text("42")
return file_path


def test_read_data(temp_file):
assert read_data(temp_file) == 42


3) Property-based тест (генерация случайных входных данных)
@given(st.integers(), st.integers())
def test_add_random(a, b):
assert add(a, b) == a + b


Быстрый запуск только упавших тестов:
pytest --lf
🔥208👍3😱2
This media is not supported in your browser
VIEW IN TELEGRAM
⚡️ Tencent выложила код Hunyuan World 1.1 (WorldMirror)

Теперь доступен полный стек для кастомизации и тонкой настройки модели:

- из видео в 3D-сцену за одну секунду
- преобразование ЛЮБОГО входа (картинка, видео, 3D-приоры) в ЛЮБОЙ выход: 3DGS, depth, камеры, normal-карты, point-cloud
- готовый код для обучения и свои пайплайны

Можно сразу пробовать онлайн-демо или собирать свою модель.

Демо: https://huggingface.co/spaces/tencent/HunyuanWorld-Mirror
Код: https://github.com/Tencent-Hunyuan/HunyuanWorld-Mirror

@pythonl
Please open Telegram to view this post
VIEW IN TELEGRAM
12👍6🔥3😱1
Почему «Async Django» часто решает не ту проблему

Django теперь умеет ASGI и async-views, но автор статьи отмечает: переход на async сам по себе почти ничего не ускоряет. Чтобы получить выгоду, весь код должен быть переписан под асинхронность, а в реальных проектах прирост обычно минимальный.

Где async реально нужен?
В задачах с большим количеством ожидания: внешние API, WebSockets, стриминг ответов. Там async даёт ощутимую экономию.

Но есть нюанс:
Django стал «двухрежимным» фреймворком - синхронные и асинхронные части живут рядом, усложняя архитектуру. ORM всё ещё в основном синхронная, и это становится бутылочным горлышком.

Поэтому для большинства проектов выгоднее оставить sync Django и вынести тяжёлые операции в фоновые задачи (Celery, RQ). Это проще, надёжнее и предсказуемее.

Итог:
Async Django - круто с инженерной точки зрения, но бизнес-ценность есть далеко не в каждом сценарии. Для большинства приложений классический Django остаётся лучшим выбором.


https://www.loopwerk.io/articles/2025/async-django-why/
👍14🔥76
🖥 Аккуратный выход из Python-скриптов через sys.exit

В продакшене важно правильно сигнализировать системе об успехе или ошибке.
В Python это делается через sys.exit(<код>):

0 — успешное завершение
неноль — ошибка, которую может поймать CI/CD, Docker, cron или любой supervisor

В примере выше try/except использует это правило:
- при ошибке деления выводится сообщение и скрипт завершается с кодом 1
- при успешной операции — вывод “Operation successful!” и код 0

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

@pythonl
Please open Telegram to view this post
VIEW IN TELEGRAM
👍196🔥4🤩1
🔍Тестовое собеседование на Middle Python с Senior из X5 уже завтра!

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

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

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

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

Реклама.
О рекламодателе.
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥62
🖥 Современная панель для мониторинга Docker-контейнеров в реальном времени

Что умеет:
- следит за локальными и удалёнными Docker-хостами в одном окне
- умно перезапускает контейнеры с настраиваемой логикой повторов
- шлёт алерты в Telegram, Slack, Discord, Gotify и почту
- обновляет контейнеры по расписанию
- позволяет разворачивать Docker Run и Compose-пресеты прямо из UI
- показывает health-чеки и события в реальном времени

Github: https://github.com/darthnorse/dockmon

@pythonl
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥84👍3
This media is not supported in your browser
VIEW IN TELEGRAM
🚀 27 ноября пройдет Pytup — митап для разработчиков, ML-инженеров и энтузиастов Python. Встречаемся в Екатеринбурге и онлайн, чтобы в неформальной обстановке обсудить новые подходы, решения и вызовы индустрии.

Разработчик системы контроля качества умных устройств на производстве Яндекс Алисы Арсений Саблин поделится, как используется Python при тестировании станции с Алисой. Техлид VK Tech Никита Улько разберет чистую архитектуру с практической точки зрения. А технический менеджер проектов Yandex Cloud Егор Гордовский расскажет о работе дата-центров.

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

📅 27 ноября в 17.00 (по Екб)
📍 Екатеринбург
🛜 Офлайн/онлайн

Регистрируемся
9👍1🔥1
This media is not supported in your browser
VIEW IN TELEGRAM
🖥 Python задака

Напиши функцию, которая распарсит вложенные структуры (списки, кортежи, множества, генераторы) в одну последовательность, но не трогает строки и не падает из-за циклов.

Вот как сделать это без рекурсии, только через стек:


def flatten(obj):
stack = [obj]
seen = set()
while stack:
x = stack.pop()
if isinstance(x, (str, bytes)):
yield x
elif isinstance(x, (list, tuple, set)):
xid = id(x)
if xid in seen:
continue
seen.add(xid)
stack.extend(reversed(list(x)))
else:
yield x

# пример
data = [1, [2, 3], ("ab", [4, 5]), 6]
data.append(data) # создаём цикл
print(list(flatten(data)))
Please open Telegram to view this post
VIEW IN TELEGRAM
10👍5🔥4🤩2
🤖 Python + ИИ — лёгкий старт и быстрый рост в карьере разработчика.

Освойте с нуля один из популярных языков программирования и усильте свой вес на рынке знанием ИИ-инструментов для разработчиков на расширенном курсе «Python-разработчик».

Вы научитесь:

- разрабатывать веб-приложения и API;
- работать с фреймворками Django, Flask, FastAPI и с базами данных SQL, PostgreSQL;
- разбираться в принципах ООП, многопоточности, асинхронности.

Вы выполните более 90 практических заданий, добавите в портфолио 23 проекта и научитесь проходить технические интервью. А сразу после окончания курса пройдёте собеседования в наших компаниях-партнёрах: Ozon Банке, Авито и ВТБ.

Весь ноябрь в Нетологии — чёрная пятница: заберите курс со скидкой 50% и получите приятные подарки.

➡️ Узнать подробности

Реклама. ООО "Нетология". ИНН 7726464125 Erid 2VSb5wAW1AZ
3🔥2👍1😱1
⚡️ Rust vs Python - как найти баланс между скоростью и простотой

JetBrains выпустили подробный разбор, где сравнивают Python и Rust без фанатизма — по скорости, синтаксису, памяти, экосистеме, конкурентности и даже по карьерным сценариям.

Главный вывод: Python нужен там, где важна скорость разработки и богатая экосистема, Rust, когда критична производительность, безопасность и масштабируемость. Всё чаще их используют вместе: Python для логики, Rust для самых горячих участков.

Ключевые моменты

Рост и популярность
- Python уверенно расширяет аудиторию: быстрый вход, огромная экосистема, удобство для ML, веба и автоматизации.
- Rust годами остаётся самым любимым языком разработчиков — благодаря безопасности памяти, скорости и надёжности.

Типы и управление памятью
- Python — динамическая типизация и удобный GC: легко начать, но ошибки всплывают в рантайме.
- Rust — строгая типизация, система владения и заимствований, отсутствие GC: ошибки ловятся на этапе компиляции, производительность предсказуема.

Производительность и конкурентность
- Python ограничен GIL: хорош для I/O, но CPU-параллелизм требует multiprocessing или расширений.
- Rust не имеет GIL — настоящая параллельность, «бесстрашная» конкурентность и контроль безопасности компилятором.

Экосистема
- Python — PyPI, Jupyter, зрелые фреймворки для DS/ML, веба, автоматизации.
- Rust — Cargo и crates.io, сильная база для CLI, системного софта, WebAssembly.

Комбинация Python + Rust
- Тренд — ускорять Python-проекты Rust-модулями.
- Библиотеки типа pydantic-core или Ruff показывают огромный прирост скорости.
- PyO3 делает интеграцию очень простой: Rust-код можно вызывать как обычный Python-модуль.

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

Как выбирать
- Нужна скорость разработки и гибкость — Python.
- Нужна производительность и надёжность — Rust.
- Нужны и то, и другое — гибридный подход Python + Rust.

Подробный разбор
- в блоге JetBrains:
https://blog.jetbrains.com/rust/2025/11/10/rust-vs-python-finding-the-right-balance-between-speed-and-simplicity/

#Rust #Python #Programming #Backend #Performance

@pythonl
14👍8🔥2😁1