Python/ django
58.7K subscribers
2.11K photos
67 videos
48 files
2.83K links
по всем вопросам @haarrp

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

@ai_machinelearning_big_data -ML

@ArtificialIntelligencedl -AI

@datascienceiot - 📚

@pythonlbooks

РКН: clck.ru/3FmxmM
加入频道
Руководство_по_ускорению_и_оптимизации_Python_кода.pdf
264.6 KB
🖥 Гайд по ускорению Python, который реально стоит прочитать 🔥

Без лишней теории — только рабочие практики, которые используют разработчики в боевых проектах.

Внутри:
• Как искать bottleneck'и и профилировать код
• Где и когда использовать Numba, Cython, PyPy
• Ускорение Pandas, NumPy, переход на Polars
• Асинхронность, кеши, JIT, сборка, автопрофилировка — всё по полочкам
• Только нужные инструменты: scalene, py-spy, uvloop, Poetry, Nuitka

⚙️ Написано просто, чётко и с прицелом на production.

📌 Полная версия онлайн

@pythonl
Please open Telegram to view this post
VIEW IN TELEGRAM
🎙️ Voice Extractor — мощный open-source инструмент для извлечения и разметки голоса из многофайлового аудио

Если у тебя есть подкасты, интервью или многоголосые записи — этот инструмент выделит каждого говорящего и превратит всё в чистые датасеты для TTS или анализа.

🔧 Что умеет:
• Диаризация: разделение голосов с помощью Pyannote
• Удаление перекрытий: исключает участки с одновременной речью
• Транскрипция: генерирует текст аудио
• Изоляция голоса: можно вырезать только одного говорящего
• Многоязычность: работает не только с английским

🎯 Зачем использовать:
• Создание кастомных TTS-моделей
• Анализ подкастов, лекций и интервью
• Построение голосовых ассистентов

🚀 Как запустить:

git clone https://github.com/ReisCook/Voice_Extractor.git
cd Voice_Extractor
pip install -r requirements.txt
python extract_voice.py --file_path your_audio_file.mp3


📎 GitHub: https://github.com/ReisCook/Voice_Extractor

@pythonl
Хотите быстро создать своего Telegram-бота?

Например:
📊 Бота-аналитика, который собирает данные и строит отчеты
🤖 Бота-переводчика, который поможет общаться с зарубежными коллегами
🎬 Бота-киноэксперта, который подберет фильмы по настроению

Какого бы помощника вы ни хотели запустить, это можно легко сделать в облаке без настройки серверов и затрат на инфраструктуру.

Облачный провайдер Cloud․ru расскажет на бесплатном вебинаре 5 июня, как создать бота в облаке и какие компоненты для этого нужны.

Будет демо — в прямом эфире эксперт покажет процесс и ответит на вопросы.

Зарегистрироваться на вебинар🖱
Please open Telegram to view this post
VIEW IN TELEGRAM
🐍 Python-библиотеки для Linux-администраторов

Набор must-have инструментов, которые помогут автоматизировать системные задачи, управлять файлами, процессами и сетью:

🔸 os — работа с файловой системой, путями, переменными окружения
https://docs.python.org/3/library/os.html

🔸 subprocess — запуск внешних команд и управление ими
https://docs.python.org/3/library/subprocess.html

🔸 psutil — мониторинг процессов, ресурсов, дисков, сети
https://pypi.org/project/psutil/

🔸 platform — информация об ОС, архитектуре, версии Python
https://docs.python.org/3/library/platform.html

🔸 socket — сетевые соединения и сокеты
https://docs.python.org/3/library/socket.html

🔸 pwd — доступ к информации о пользователях Unix
https://docs.python.org/3/library/pwd.html

🔸 pathlib — удобная работа с путями в ООП-стиле
https://docs.python.org/3/library/pathlib.html

🔸 shutil — копирование, удаление, архивация файлов и директорий
https://docs.python.org/3/library/shutil.html

🔸 tarfile — создание и извлечение `.tar`-архивов
https://docs.python.org/3/library/tarfile.html

📦 Эти модули — основа для написания удобных и мощных CLI-утилит, скриптов и системных инструментов.

@pythonl
🎯 5 ИИ-проектов, которые ты можешь собрать за выходные

Хочешь прокачать навыки ML и Python без математики и Kaggle? Лови 5 готовых идей, которые можно собрать за 1–2 дня:

🔹 Голосовой ассистент — Whisper + GPT + озвучка
🔹 Чат-бот для PDF — LangChain + FAISS + OpenAI
🔹 Генератор картинок — Stable Diffusion + Gradio
🔹 Подписи к фото — BLIP + HuggingFace
🔹 TL;DR бот — BART или GPT для суммаризации текста

Примеры кода
Деплой на HuggingFace / Streamlit
Всё реально собрать за выходные

📎 Забирай гайд — и добавь проекты в резюме: «AI developer: checked»

@pythonl
🐍 Ошибка с изменяемыми значениями по умолчанию»**

🎯 Цель: Найти и объяснить баг, который не вызывает исключений, но ломает логику приложения

📍 Ситуация:

У тебя есть функция, которая логирует события с метаданными. По умолчанию метаданные можно не передавать:


def log_event(event, metadata={}):
metadata["event"] = event
print(metadata)


На первый взгляд — всё работает. Но при многократных вызовах функции происходит что-то странное:


log_event("start")
log_event("stop")
log_event("error", {"code": 500})
log_event("retry")


👀 Вывод:

{'event': 'start'}
{'event': 'stop'}
{'code': 500, 'event': 'error'}
{'code': 500, 'event': 'retry'}


🔍 Что пошло не так? Почему code: 500 появляется там, где его быть не должно?

🧩 Задача:

1. Найди и объясни источник бага
2. Почему Python не выбрасывает ошибку?
3. Как проверить, что дефолтный аргумент сохраняет состояние между вызовами?
4. Как это исправить безопасно и "по питоновски"?
5. Где ещё может проявиться аналогичный эффект?


🛠 Разбор и решение:

🔸 Причина:
Изменяемое значение (`dict`) используется как значение по умолчанию.
В Python значения по умолчанию вычисляются один раз при определении функции, а не при каждом вызове.

То есть
metadata={} создаётся один раз и сохраняется между вызовами, если параметр не передан.

🔸 Проверка:

def f(d={}):
print(id(d))
d["x"] = 1
print(d)

f()
f()


Вы увидишь одинаковые
id(d) — значит, используется тот же объект.

🔸 Решение (правильный способ):

def log_event(event, metadata=None):
if metadata is None:
metadata = {}
metadata["event"] = event
print(metadata)


Теперь при каждом вызове создаётся новый словарь, и
code: 500 не "протекает" в следующие вызовы.

🔸 Где ещё встречается:
- Списки:
items=[]
- Множества:
visited=set()
- Объекты пользовательских классов

📌 Вывод:
Изменяемые значения по умолчанию — одна из самых частых ошибок в Python. Она не вызывает исключений, но может незаметно повредить данные. Всегда используй
None + инициализацию внутри функции для изменяемых типов.

@pythonl
🕵️‍♂️ ExeRay — статический анализатор PE-файлов на Python

ExeRay — это удобный инструмент для реверс-инженеров, исследователей безопасности и malware-аналитиков.
Он проводит статический анализ исполняемых файлов .exe (PE-файлов) и визуализирует их структуру в удобной форме.

🧩 Что умеет ExeRay:

Анализировать PE-файл и извлекать:
- Заголовки, секции, импорты/экспорты
- Таблицы ресурсов
- Используемые API и библиотеки
- Suspicious patterns и аномалии

Генерировать отчёт в HTML
Работает полностью офлайн
Поддержка анализа несколькими методами (pefile + custom парсеры)

📦 Пример использования:


python main.py -f malware.exe


После чего ты получаешь красивый и подробный отчёт по всем ключевым параметрам PE-файла.


💻 Технологии:

- Python 3
- pefile, matplotlib, pyvis для графов зависимостей
- Простая CLI и понятный код — легко расширить под свои задачи

🧠 Кому подойдёт:

- Reverse Engineers
- Malware Analysts
- Red/Blue Teams
- Python-разработчикам, интересующимся PE-структурой и безопасностью

🔥 Если ты работаешь с .exe, и хочешь быстро понять, что внутри — ExeRay сэкономит часы ручного анализа.

📁 Репозиторий:

@pythonl
Реально ли совмещать учёбу с работой и жизнью?

Совместный онлайн-бакалавриат НИУ ВШЭ и Нетологии как раз даёт такую возможность.
Обучение проходит полностью дистанционно, но в очной форме, а значит сохраняется отсрочка от армии, льготы на проезд, доступ к библиотеке и возможность взять образовательный кредит с господдержкой.

На первых курсах вы изучите базовые математические и гуманитарные предметы,
основы программирования и профильные дисциплины по фулстек-разработке.

А с третьего курса выберете углублённый трек: руководитель командой разработки или DevOps-инженер.
По итогу обучения освоите 4 языка программирования: Java, Python, JavaScript, Go.

Практики будет много — участие в хакатонах, командные проекты и возможность попасть на стажировку в Сбер по ускоренному треку.
Получите диплом, который поможет строить карьеру в сильных IT-командах.

Учитесь без отрыва от жизни: https://netolo.gy/ebKb

Реклама. ООО "Нетология". ИНН 7726464125 Erid: 2VSb5wZ53dr
This media is not supported in your browser
VIEW IN TELEGRAM
🖥 Physics Simulations

Набор симуляций физических явлений, написанных на Python с использованием Pygame. Эти симуляции создавались в образовательных целях и охватывают различные концепции, включая:

- Законы Ньютона
- Гравитацию
- Силы и трение
- Простую гармоническую модуляцию
- И многое другое

Для запуска симуляций необходимо установить зависимости:


pip install -r requirements.txt


Затем можно запустить нужный скрипт напрямую, например:


python gravity_sim.py


Каждый файл представляет отдельную симуляцию, сопровождаемую визуализацией с помощью Pygame.

📌 Github

@pythonl
Please open Telegram to view this post
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
Это реклама открытой технологической конференции от Сбера GigaConf 2025.

На ней технари рассказывают сложные вещи о прикладном применение генеративного искусственного интеллекта.

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

GigaConf 2025 // Москва, 25 июня
https://gigaconf.ru/
🤖 ReasonFlux-Coder — ИИ, который пишет код и сразу проверяет его

Новая серия моделей от команды ReasonFlux научилась не только писать код, но и автоматически генерировать юнит-тесты.
Это стало возможно благодаря их алгоритму CURE — модель учится программировать и проверять себя одновременно.

💡 Что внутри:

🧠 ReasonFlux-Coder-7B и 14B
Пишут код лучше, чем другие модели такого же размера: Qwen Coders, DeepSeek, Seed-Coders.
Без проблем работают в пайплайнах с агентами и умеют масштабироваться на этапе запуска.

🧪 ReasonFlux-Coder-4B (Long-CoT)
Модель с расширенным рассуждением (Chain-of-Thought).
• Обходит Qwen3-4B
• Создаёт юнит-тесты с эффективностью 64.8%
• Может использоваться как reward-модель в обучении с подкреплением

📌 Зачем это нужно:
– для автотестирования кода
– для CICD пайплайнов
– для агентных систем, которые сами проверяют свои решения

📄 Подробности: https://huggingface.co/Gen-Verse/ReasonFlux-Coder-14B

@pythonl
Давно хотели освоить программирование, но вас останавливала нехватка времени или строгие дедлайны? Тогда советуем обратить внимание на бесплатные курсы Яндекс Лицея по Python, Go и C++ для начинающих.

Заниматься на них можно когда и где угодно, ведь уроки доступны онлайн и в них нет дедлайнов! Вас ждут:
Качество: занятия разработаны практикующими экспертами Яндекса.
Свобода: пользуйтесь автоматической проверкой решений и задавайте вопросы через поддержку.
Перспективы: после завершения вы получите уверенную базу для дальнейшего роста, а также сертификат, который пригодится при поступлении в Яндекс Лицей.

Не откладывайте на потом — выберите курс и зарегистрируйтесь на сайте!
🚨 Атака на PyPI, npm и RubyGems: сотни вредоносных пакетов в официальных реестрах

🔍 Исследователи обнаружили массовую кампанию по размещению вредоносных библиотек в популярных экосистемах:

🧪 Что произошло:
• На npm опубликованы фейковые версии библиотек вроде Hardhat, крадущие приватные ключи и .env
• В PyPI появились клоны requests, urllib3 и др., с вредоносными вставками
• В RubyGems — более 700 пакетов, использующих тайпосквоттинг (`activesupportt`, httpartyy и т.д.)

🎯 Цель — разработчики. Пакеты собирают:
– мнемоники
– приватные ключи
– конфиги AWS/GCP
– системную информацию

🛡 Что делать:
– Проверяй названия пакетов (тайпосквоттинг — главный приём)
– Запускай pip audit, npm audit, bundler audit
– Используй виртуальные окружения и минимум прав
– Подпиши зависимости, где это возможно (например, через Sigstore)

📌 Подробнее
This media is not supported in your browser
VIEW IN TELEGRAM
🖥 Задача: Что делает эта загадочная функция paradox и почему она называется так?


def paradox(n):
def f(x):
return ((x * x) % n + x) % n

slow = fast = 0
while True:
slow = f(slow)
fast = f(f(fast))
if slow == fast:
return slow

print(paradox(31337))


На первый взгляд — простой цикл с двумя указателями: slow и fast.
Но на деле это алгоритм Флойда ("заяц и черепаха"), используемый для нахождения цикла в псевдослучайной последовательности.

📌 Функция f(x):

Простая квадратичная функция, по сути — генератор псевдослучайных чисел по модулю n.

📌 Что происходит:

slow движется на 1 шаг за итерацию: f(x)

fast — на 2 шага: f(f(x))

Как только slow == fast, цикл найден — значит, последовательность начала повторяться.

🔍 Почему это парадокс?

Потому что вы начинаете с 0, вычисляете кучу якобы "случайных" значений, и внезапно обнаруживаете цикличность в хаосе.

Вы не знаете длину цикла, период или точку входа, но находите пересечение без хранения всей истории.

💡 Эта техника используется в:

криптографии (Pollard's rho для факторизации),

генерации чисел,

распознавании псевдопериодов,

хаотических системах.

🎯 Челлендж для продвинутых:

Измените f(x) на pow(x, 3, n) — как это повлияет на цикл?

Реализуйте поиск начала цикла и длины периода, используя Флойда + Брента.

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

🧠 Эта задача не просто про числа — она про границу между случайным и детерминированным.
Please open Telegram to view this post
VIEW IN TELEGRAM
📚 Эффективное сжатие текста: код Хаффмана в действии 

Приглашаем на открытый урок.

🗓 11 июня в 20:00 МСК
🆓 Бесплатно. Урок в рамках старта курса «Алгоритмы и структуры данных».

На этом вебинаре мы продолжим разработку архиватора, реализовав код Хаффмана. 

✔️ Рассмотрим, как построить дерево кодов, где частота появления символов определяет их битовое представление. 
✔️ Интегрируем алгоритм в наш архиватор и проведем сравнительное тестирование с RLE. 
✔️ Увидим, как эффективно работает код Хаффмана на текстовых файлах и других типах данных. 

Отличная возможность изучить продвинутые древовидные структуры данных на практическом примере.

Развивайте алгоритмическое мышление, увеличивайте производительность программ.

🎁 Всем участникам вебинара дарим промокод, который дает скидку на обучение - Algo5 

👉 Регистрация на вебинар: https://otus.pw/4BpC/

#реклама
О рекламодателе