Python/ django
63.6K subscribers
2.26K photos
136 videos
48 files
3.01K links
по всем вопросам @haarrp

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

@ai_machinelearning_big_data -ML

@ArtificialIntelligencedl -AI

@datascienceiot - 📚

@pythonlbooks

РКН: clck.ru/3FmxmM
Download Telegram
🧩 Удобная библиотека для логирования с контекстом

Unilogging упрощает процесс логирования в Python-приложениях, используя Dependency Injection для управления контекстом логов. Это позволяет легко отслеживать события, связанные с конкретными запросами, без необходимости передавать данные через все уровни приложения.

🚀Основные моменты:
- Логирование с использованием контекста для упрощения отслеживания запросов.
- Поддержка Dependency Injection для гибкости и удобства.
- Минимизация дублирования кода при передаче данных логирования.
- Интеграция с FastAPI и другими фреймворками.

📌 GitHub: https://github.com/goduni/unilogging

@pythonl
7👍4🔥2
Как обучить свою первую ML-модель — и не утонуть в теории?

Машинное обучение звучит сложно — пока вы не попробуете на практике. 24 ноября в 18:00 МСК на открытом уроке вы обучите модель для задачи классификации прямо во время занятия. 

Разберём:
– как работает алгоритм дерева решений;
– как решать задачи классификации на Python;
– что нужно, чтобы перейти от экспериментов к реальной работе с ML.

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

➡️ Открытый урок проходит в преддверии старта курса «Machine Learning. Basic». Регистрируйтесь — начните путь в Data Science с практики, а не с теории: 

https://otus.pw/iOTK/?erid=2W5zFJdCjix

Реклама. ООО "ОТУС ОНЛАЙН-ОБРАЗОВАНИЕ". ИНН 9705100963.
8😁1
This media is not supported in your browser
VIEW IN TELEGRAM
⚡️ Хитрый трюк по работе со статикой

Если заранее посчитать ETag для статических файлов, сервер сможет мгновенно отвечать 304 Not Modified без чтения с диска. Это резко ускоряет отдачу статики на Python.



import os, hashlib
from http.server import SimpleHTTPRequestHandler, HTTPServer

STATIC = "static"
etag = {f: hashlib.md5(open(os.path.join(STATIC, f),"rb").read()).hexdigest()
for f in os.listdir(STATIC)}

class H(SimpleHTTPRequestHandler):
def end_headers(self):
name = self.path.lstrip("/")
if name in etag:
self.send_header("ETag", etag[name])
super().end_headers()

HTTPServer(("0.0.0.0", 8000), H).serve_forever()
17🔥5👍4😁3
This media is not supported in your browser
VIEW IN TELEGRAM
🖥 Очистка python кода!

Чтобы сильно упростить очистку Python-кода, вынеси мелкие предикаты, фильтры и маппинги в именованные функции. Это делает пайплайны короче, уменьшает вложенность и ускоряет отладку. Такой приём особенно полезен, когда список операций растёт и становится нечитаемым. Подписывайся, больше фишек каждый день !


def is_valid(user):
return user.get("active") and user.get("role") != "banned"

def normalize(user):
user["name"] = user["name"].strip().title()
return user

def enrich(user):
user["score"] = user.get("score", 0) + 10
return user

users = [... ] # внешний источник

cleaned = [enrich(normalize(u)) for u in users if is_valid(u)]

print(cleaned)
Please open Telegram to view this post
VIEW IN TELEGRAM
15👍7😁3🤩2
✔️ CPython может получить обязательную зависимость от Rust к версии Python 3.17.

Эмма Смит и Кирилл Подопригора из core-team Python опубликовали предварительное предложение (Pre-PEP), в котором описывается план постепенного внедрения Rust в кодовую базу CPython.
На первом этапе Rust хотят использовать для необязательных модулей стандартной библиотеки, находящихся в каталоге Modules/.

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

Подробнее: https://peps.python.org/pep-0011/

@pythonl
Please open Telegram to view this post
VIEW IN TELEGRAM
15😱9👍5🔥3😁1
🚀 django-keel - мощный стартовый шаблон для Django-проектов

💡 Что это такое
Готовый современный каркас для Django-приложений, который позволяет запускать новый проект за минуты — с правильной архитектурой, CI, Docker и продуманной конфигурацией.

🔥 Что внутри
- Поддержка Python 3.12+ и Django 5.2+
- Несколько видов проектов: SaaS, API-backend, web-app, internal tools
- Docker + Docker Compose
- Настроенные линтеры, тесты, coverage и GitHub Actions
- 12-factor конфигурация, разделённые settings (dev/test/prod)
- Варианты API: DRF или GraphQL
- Поддержка фронта: Next.js или HTMX + Tailwind

🎯 Почему стоит использовать
- Экономит недели рутинной настройки
- Даёт единообразную и поддерживаемую архитектуру
- Ускоряет разработку MVP, внутренних сервисов и SaaS-продуктов

🛠 Быстрый старт

copier copy gh:CuriousLearner/django-keel my-project


Репозиторий: https://github.com/CuriousLearner/django-keel

@pythonl
9👍5🔥2
🚀 GigaChat Ultra & Lightning — новые MoE-модели от Сбера

💡 Что это такое
Две открытые модели нового поколения, обученные с нуля — без чужих весов. Созданы, чтобы ускорять разработку, уменьшать рутину и быть удобным напарником для разработчиков.

🔥 Что внутри
- Ultra: 702B параметров, контекст до 131k, стабильная работа экспертов
- Lightning: 10B параметров, контекст до 256k, лёгкая и быстрая
- Генерация нескольких токенов одновременно
- Экономия памяти, оптимизация KV-кеша
- Совместимость с Hugging Face, vLLM и SGLang

🎯 Почему стоит использовать
- Сбер снимает часть технических забот, чтобы сосредоточиться на экспериментах
- Ускоряет локальное прототипирование и работу с AI-помощниками
- Подходит для масштабных решений и небольших проектов

@pythonl
13👍5🔥5
🚀 myfy - модульный Python-фреймворк с фронтендом «из коробки»

Зачем он нужен: FastAPI - идеален для API, но без нормального фронта.

myfy берёт лучшее из FastAPI и добавляет полноценную модульность, DI и встроенный UI.

🔥 Главное
- Модульная архитектура с жизненным циклом (`start/stop`)
- Type-based DI без скрытой магии
- Фронтенд сразу из коробки:
Jinja2 + DaisyUI + Tailwind + Vite + HMR
Можно делать UI без React/Vue, идеально для внутренних тулов
- Чистая структура проекта, минимум бойлерплейта

🚀 Быстрый старт

pip install myfy
myfy init
myfy frontend init
myfy run


https://github.com/psincraian/myfy

@pythonl
16👍6🔥3😁2
This media is not supported in your browser
VIEW IN TELEGRAM
🔥 10 однострочных Python-функций, которые экономят время каждый день

Держи небольшой набор из 10 функций-однострочников, которые полезно просто закинуть в свой utils.py.
Они помогают быстро работать со списками, файлами, JSON, статистикой и частотами, без лишнего шума в коде.
Скопируй блок целиком и используй нужные функции по месту.


from pathlib import Path
from collections import Counter
import json, statistics as stats

chunks = lambda it, n: [it[i:i + n] for i in range(0, len(it), n)]

flatten = lambda lst: [x for sub in lst for x in sub]

unique = lambda seq: list(dict.fromkeys(seq))

sliding = lambda it, n: [it[i:i + n] for i in range(len(it) - n + 1)]

freqs = lambda seq: Counter(seq)

read_text = lambda p: Path(p).read_text(encoding="utf-8")

write_text = lambda p, text: Path(p).write_text(text, encoding="utf-8")

read_json = lambda p: json.loads(Path(p).read_text(encoding="utf-8"))

write_json = lambda p, obj: Path(p).write_text(json.dumps(obj, ensure_ascii=False, indent=2), encoding="utf-8")

mean_std = lambda xs: (stats.mean(xs), stats.pstdev(xs))


@pythonl
8👍4🔥2😁2