Python/ django
по всем вопросам @haarrp @itchannels_telegram - 🔥 все ит каналы @ai_machinelearning_big_data -ML @ArtificialIntelligencedl -AI @datascienceiot - 📚 @pythonlbooks РКН: clck.ru/3FmxmM
إظهار المزيد📈 نظرة تحليلية على قناة تيليجرام Python/ django
تُعد قناة Python/ django (@pythonl) في القطاع اللغوي الروسية لاعباً نشطاً. يضم المجتمع حالياً 60 075 مشتركاً، محتلاً المرتبة 2 192 في فئة التكنولوجيات والتطبيقات والمرتبة 10 214 في منطقة روسيا.
📊 مؤشرات الجمهور والحراك
منذ تأسيسه في невідомо، حقق المشروع نمواً سريعاً وجمع 60 075 مشتركاً.
بحسب آخر البيانات بتاريخ 05 يونيو, 2026، تحافظ القناة على نشاط مستقر. خلال آخر 30 يوماً تغيّر عدد الأعضاء بمقدار -562، وفي آخر 24 ساعة بمقدار -8، مع بقاء الوصول العام مرتفعاً.
- حالة التحقق: غير موثّقة
- معدل التفاعل (ER): يبلغ متوسط تفاعل الجمهور 6.76%. وخلال أول 24 ساعة من النشر يحصد المحتوى عادةً 3.58% من ردود الفعل نسبةً إلى إجمالي المشتركين.
- وصول المنشورات: يحصل كل منشور على متوسط 4 065 مشاهدة. وخلال اليوم الأول يجمع عادةً 2 153 مشاهدة.
- التفاعلات والاستجابة: يتفاعل الجمهور بانتظام؛ متوسط التفاعلات لكل منشور يبلغ 15.
- الاهتمامات الموضوعية: يركز المحتوى على مواضيع رئيسية مثل github, claude, контекст, архитектура, api.
📝 الوصف وسياسة المحتوى
يصف المؤلف القناة بأنها مساحة للتعبير عن الآراء الذاتية:
“по всем вопросам @haarrp
@itchannels_telegram - 🔥 все ит каналы
@ai_machinelearning_big_data -ML
@ArtificialIntelligencedl -AI
@datascienceiot - 📚
@pythonlbooks
РКН: clck.ru/3Fmxm...”
بفضل وتيرة التحديث المرتفعة (أحدث البيانات بتاريخ 07 يونيو, 2026) تحافظ القناة على حداثتها ومستوى وصول مرتفع. وتُظهر التحليلات تفاعلاً نشطاً من الجمهور، ما يجعلها نقطة تأثير مهمة ضمن فئة التكنولوجيات والتطبيقات.
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) — как это повлияет на цикл?
Реализуйте поиск начала цикла и длины периода, используя Флойда + Брента.
Придумайте, как использовать это для взлома слабых генераторов случайных чисел.
🧠 Эта задача не просто про числа — она про границу между случайным и детерминированным..env
• В PyPI появились клоны requests, urllib3 и др., с вредоносными вставками
• В RubyGems — более 700 пакетов, использующих тайпосквоттинг (`activesupportt`, httpartyy и т.д.)
🎯 Цель — разработчики. Пакеты собирают:
– мнемоники
– приватные ключи
– конфиги AWS/GCP
– системную информацию
🛡 Что делать:
– Проверяй названия пакетов (тайпосквоттинг — главный приём)
– Запускай pip audit, npm audit, bundler audit
– Используй виртуальные окружения и минимум прав
– Подпиши зависимости, где это возможно (например, через Sigstore)
📌 Подробнее.env
• В PyPI появились клоны requests, urllib3 и др., с вредоносными вставками
• В RubyGems — более 700 пакетов, использующих тайпосквоттинг (`activesupportt`, httpartyy и т.д.)
🎯 Цель — разработчики. Пакеты собирают:
– мнемоники
– приватные ключи
– конфиги AWS/GCP
– системную информацию
🛡 Что делать:
– Проверяй названия пакетов (тайпосквоттинг — главный приём)
– Запускай pip audit, npm audit, bundler audit
– Используй виртуальные окружения и минимум прав
– Подпиши зависимости, где это возможно (например, через Sigstore)
📌 Подробнее
@pythonl
pip install -r requirements.txt
Затем можно запустить нужный скрипт напрямую, например:
python gravity_sim.py
Каждый файл представляет отдельную симуляцию, сопровождаемую визуализацией с помощью Pygame.
📌 Github
@pythonl.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
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 + инициализацию внутри функции для изменяемых типов.
@pythonlos — работа с файловой системой, путями, переменными окружения
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
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
@pythonldict — доступ по ключу
• работает как list — доступ по индексу
• сохраняет порядок вставки
• поддерживает .index(key) и .key_at(i)
📌 Задача: Реализуй класс IndexedDict, который делает всё это.
🔍 Пример использования:
d = IndexedDict()
d["a"] = 10
d["b"] = 20
d["c"] = 30
print(d["a"]) # 10
print(d[0]) # 10
print(d[1]) # 20
print(d.key_at(1)) # "b"
print(d.index("c")) # 2
for k in d:
print(k, d[k]) # перебор по ключам
⚠️ Подвох:
• Просто наследовать dict не получится — d[0] будет интерпретироваться как ключ, а не индекс
• Придётся реализовать двойную логику доступа вручную
• Нужно корректно поддержать __iter__, __getitem__, __len__ и др.
✅ Решение:
```python
from collections.abc import MutableMapping
class IndexedDict(MutableMapping):
def __init__(self):
self._data = {}
self._keys = []
def __getitem__(self, key):
if isinstance(key, int):
real_key = self._keys[key]
return self._data[real_key]
return self._data[key]
def __setitem__(self, key, value):
if key not in self._data:
self._keys.append(key)
self._data[key] = value
def __delitem__(self, key):
if key in self._data:
self._keys.remove(key)
del self._data[key]
def __iter__(self):
return iter(self._keys)
def __len__(self):
return len(self._data)
def index(self, key):
return self._keys.index(key)
def key_at(self, idx):
return self._keys[idx]
```
📈 Зачем это нужно:
• Отличная тренировка на переопределение магических методов
• Часто встречается в фреймворках (Pandas, SQLAlchemy)
• Тестирует знание ABC-классов (`collections.abc.MutableMapping`)
• Полезно для построения кастомных структур данных
Хочешь версию с `__contains__`, `__reversed__`, типизацией и сериализацией — пиши 💬
@pythonlconfig.yaml: логин/пароль или токен VK + данные Telegram API
• Поддерживает прокси (SOCKS5) — для обхода блокировок
• Гибко настраиваемый интервал проверки новых постов (по умолчанию — 1 час)
• Фильтрует записи по чёрному списку и стоп-словам
• Добавляет заголовки и футеры с поддержкой Markdown
• Работает в Docker — легко разворачивается на сервере
TG_AutoPoster — готовое решение для автоматического кросспостинга из ВК в Telegram 💬
▪ Github
@pythonl
متاح الآن! بحث تيليغرام 2025 — أهم رؤى العام 
