50319
Всё самое интересное из мира Python Сотрудничество, реклама: @devmangx Работаем с @Spiral_Yuri РКН: https://clck.ru/3GMMF6
Подборка популярных каналов по информационной безопасности и этичному хакингу:
🔐 infosec — ламповое сообщество, которое публикует редкую литературу, курсы и полезный контент для ИБ специалистов любого уровня и направления.
🤯 Social Engineering — самый крупный ресурс в Telegram, посвященный этичному Хакингу, OSINT и социальной инженерии.
💬 Вакансии в ИБ — актуальные предложения от самых крупных работодателей и лидеров рынка в сфере информационной безопасности.
Если ты каждый день используешь кучу AI-инструментов — вот штука, которая серьёзно упростит тебе жизнь.
Называется GlobalGPT
В одном месте ты получаешь доступ к: GPT-4.5, Claude 3.7, DeepSeek, MidJourney, Perplexity, Runway и другим.
Больше не нужно прыгать по вкладкам — всё в одной панели 🪄
👉 @PythonPortal
Посмотри на это: MCP-сервер для управления Jupyter-ноутбуками через Claude
MCP-сервер — это "мост", который позволяет Claude напрямую управлять ноутбуком. Создавать ячейки, писать код, запускать его.
Ты можешь сказать Claude что-то вроде:
«Создай ячейку с кодом, который загружает CSV-файл и строит график»
Наткнулся на отличную платформу для практики: Pybites Bites of Py
Это интерактивные мини-задачи (байты) по Python, которые ты решаешь прямо в браузере.
Твой код сразу тестируется
> Короткие и прикладные задачи
> Всё онлайн, ничего ставить не нужно
> Прокачка Python навыков и стандартной библиотеки
> Отлично подходит для новичков и опытных
Попробовать можно бесплатно:
-> https://pybitesplatform.com/bites/demo
👉 @PythonPortal
Это гайд “Python Logging With Loguru” рассказывает о том, как упростить логирование в Python с помощью библиотеки Loguru — удобной и мощной альтернативы стандартному logging
Примеры кода показаны для реальных задач, от простой отладки до продакшен-логирования.
Приятного изучения 💪
👉 @PythonPortal
Принёс полезное — базу актуальных бесплатных API, которую регулярно обновляют 😇
Внутри аж 403 штуки на любой вкус: от игр и погоды до финансов и здоровья
Алгоритмы присваивают рейтинг каждому API на основе надежности, частоты ошибок и времени отклика
Если апишка перестает работать или становится платной, она теряет рейтинг и удаляется с сайта
👉 @PythonPortal
В копилку лайфхаков: если открыть любой репо на GitHub и поменять "hub" на "podcast" в URL — за считанные секунды он превратится в аудиоподкаст
Можно слушать, пока делаешь кофе или дебажишь прод 🤔
Опенсорс и бесплатно
👉 @PythonPortal
В копилку лайфхаков: если заменить .com на .dev в URL любого репозитория GitHub — репозиторий откроется в VS Code прямо в браузере
Идеально для быстрого просмотра и редактирования кода без установки 🤤
👉 @PythonPortal
Интерфейс с перетаскиванием для создания ИИ-агентов
Langflow — это мощный визуальный инструмент для создания и развертывания ИИ-агентов и рабочих процессов без единой строки кода.
Поддерживает все основные LLM, векторные базы данных и другое.
Полностью open-source, более 62 тысяч звёзд 😮
👉 @PythonPortal
Полная реализация Transformer на PyTorch
Чёткое и наглядное объяснение, как работают трансформеры — без воды
Всё на Python, максимально понятно
-> https://www.k-a.in/pyt-transformer.html 💪
👉 @PythonPortal
OpenAI запустила бесплатные курсы по ИИ
25 марта OpenAI представила Academy — новый центр для изучения ИИ и машинного обучения.
Он создан, чтобы сделать понимание ИИ простым, доступным и бесплатным.
Курсы как для новичков, так и для инженеров.
И это полностью бесплатно.
> Доступ к OpenAI Academy здесь: http://academy.openai.com 💪
👉 @PythonPortal
Бесплатный Python-код от Anthropic, чтобы выжать максимум из Claude
Anthropic выложили бесплатный интерактивный курс по prompt engineering:
> Jupyter-ноутбуки с готовыми примерами и упражнениями
> Всё на Python
> 9 тем: от основ до продвинутых техник и антипаттернов
> Интеграция с Claude 3 Haiku / Sonnet / Opus
> Можно запускать в Colab или локально
Вот все ноутбуки на GitHub: click
Подходит и для новичков, и для разработчиков, кто хочет выжать максимум из LLM 😍
👉 @PythonPortal
Функция consume() из itertools — это способ вычитать все элементы итератора, не сохраняя их.
Но способов реализовать это гораздо больше, и вот самые интересные
> Через for:
def consume(iterable):
for _ in iterable:
pass
set(map(type, zip(iterable)))
min(map(bool, zip(iterable)))
from collections import deque
deque(iterable, maxlen=0)
next(compress(iterable, repeat(False)), None)
next(dropwhile(id, iterable), None)
next(islice(iterable, sys.maxsize, None), None)
iterator = groupby(iterable, key=lambda x: None)
next(iterator, None)
next(iterator, None)
Мини-GPT на PyTorch
Если тебе всегда было интересно, как работает GPT под капотом — в этом проекте автор реализует минималистичную версию GPT на PyTorch всего в ~300 строк.
Он показывает:
> архитектуру трансформера, обучение с нуля и генерацию текста.
Также рекомендую глянуть этот проект, если хочешь разобраться в работе LLM
👍 — ок, гляну
🔥 — я всё и так это знаю
👉 @PythonPortal
Питонисты в процессе изучения новой библиотеки
👉 @PythonPortal
Майк Тайсон однажды сказал: "У всех есть план, пока не получат по лицу."
В программировании (и особенно при изучении Python) это можно переформулировать так:
«Кажется, что ты понял тему — пока не получишь задачу в лоб»
Какой вывод даст этот код — и почему? 😶
👉 @PythonPortal
Нужно искать ключи в нескольких словарях с приоритетом?
Ручной способ поиска: сначала в group3, если нет — в group2, если и там нет — в group1:
age = group3.get(name, group2.get(name, group1.get(name)))
ChainMap для чистой логики с подстановкой по умолчаниюm = ChainMap(group3, group2, group1)
age = m.get("ana")
m.get(key) — он сам идет по цепочке, пока не найдет ключ
Совет по Python:
Чтобы посчитать количество вхождений элементов, используйте Counter из модуля collections
Например у нас словарь, где ключ — это ID устройства, а значение — его производитель.
devices_vendors = {
'device001': 'Cisco',
'device002': 'Juniper',
'device003': 'Cisco',
'device004': 'Arista',
'device005': 'Cisco'
}vendor_counts = Counter(devices_vendors.values())
.values()), т.е. список вендоров: ['Cisco', 'Juniper', 'Cisco', 'Arista', 'Cisco'], и Counter считает, сколько раз каждый встретился.Counter({'Cisco': 3, 'Juniper': 1, 'Arista': 1})
Использование декоратора dataclass в Python
Декоратор dataclass упрощает создание классов, которые в основном хранят данные. Он автоматически генерирует специальные методы, такие как __init__, __repr__ и другие. Это снижает многословность кода, сохраняя при этом его ясность и функциональность.
На фото приведены два примера. В первом мы используем декоратор dataclass, поэтому явно не добавляем методы __init__, __repr__ и __eq__. Они автоматически добавляются декоратором.
Во втором примере показано, как выглядел бы тот же код без использования декоратора dataclass. Видно, что такой код гораздо длиннее
Ставь лайк если пост был полезным 🪑
👉 @PythonPortal
Пожалуйста, перестань использовать Python как 15 лет назад. Лучше начни применять эти практики
Прожми лайк, если понравилось — 👍
👉 @PythonPortal
Cкрипт из 3 строк, чтобы автоматически открыть Google Earth или любой другой сайт
> import webbrowser
# Укажем ссылку на Google Earth
google_earth_url = 'https://earth.google.com/'
webbrowser.open(google_earth_url)
Нужны фейковые данные для тестов или демо? Попробуй пакет Faker — отличная библиотека
from faker import Faker # импортируем библиотеку Faker
fake = Faker() # создаём объект генератора
print(fake.name()) # Например: Paul Lynn
print(fake.name()) # Например: Keith Soto
print(fake.address())
# Например:
# Unit 6944 Box 5854
# DPO AA 14829
Faker('ru_RU')), а также умеет создавать email, номера, даты, компании и т.д 🤙
Вот классный бот, который превращает Telegram в консоль для управления сервером Linux
ServerManagementTelegramBot — проект на aiogram 3.x, с которым можно:
> смотреть загрузку CPU, RAM, диска
> запускать shell-команды прямо из чата
> управлять файлами на сервере (скачивать, удалять, просматривать)
А также добавлять собственные команды через JSON-конфиг
Отлично подойдёт для своих VPS или просто как pet-проект для практики. Советую заценить — будет полезно и интересно 💪
👉 @PythonPortal
Гвидо — создатель Python
Гэндальф — волшебник из «Властелина колец»
Дарт Вейдер — злодей из вселенной «Звёздных войн»
Что у них общего?
Это примеры, которые я использовал, чтобы показать, как оператор * (splat) позволяет разворачивать итерируемые объекты 😂
👉 @PythonPortal
Вы можете установить UV_TORCH_BACKEND=auto, и uv автоматически установит подходящую версию PyTorch с поддержкой CUDA для вашей машины — без какой-либо настройки. 😊
👉 @PythonPortal
Буквально бесплатно и без ограничений: доступ к топовым AI API для твоих приложений
Puter — это не просто компьютер в браузере, а полноценная AI-песочница
С моделью "платит пользователь" все расходы на API покрываются самими пользователями, а не тобой
Подключай OpenAI, Claude, Grok, Llama и Gemini и делай всё, что хочешь ❤️
👉 @PythonPortal
Общайся с любым репозиторием на GitHub на обычном языке
Просто добавь "talkto" перед "github" в ссылке на GitHub — и получишь интерфейс для диалога с кодом.
Можно спрашивать, что делает функция, как работает кусок кода или где может быть ошибка
Полностью open-source и бесплатно 🧝
👉 @PythonPortal
Основные команды Docker
1. Запуск / Сборка / Загрузка:
> docker run nginx — запустить контейнер из образа
> docker build -t myapp:latest . — собрать образ из Dockerfile
> docker pull ubuntu:latest — скачать образ из реестра
> docker push myuser/myapp:latest — отправить образ в реестр
2. Информация:
> docker images — список образов
> docker ps — список активных контейнеров
3. Управление контейнерами:
> docker stop mycontainer — остановить
> docker start container_name — запустить
> docker restart container_name — перезапустить
> docker kill container_name — принудительно завершить
> docker rm container_name — удалить контейнер
> docker rmi container_name — удалить образ
4. Работа с контейнерами:
> docker exec -it mycontainer bash — войти в контейнер
> docker logs container_name — логи
> docker inspect container_name — получить инфу
> docker cp container_name:/path ./local_path — скопировать файлы
5. Очистка и сохранение:
> docker system prune — удалить всё неиспользуемое
> docker save -o image.tar image:tag — сохранить образ в файл
> docker load < image.tar — загрузить образ из файла
👉 @PythonPortal
Начиная с Python 3.10, можно использовать оператор | (pipe) для объединения типов — это создаёт объединение типов (type union).
Это удобно, например, когда нужно проверить, принадлежит ли значение одному из нескольких типов с помощью isinstance
👍 — база
🔥 — понятно, буду знать
👉 @PythonPortal