Python Ninja | Программирование
6.93K subscribers
1.09K photos
99 videos
918 links
Канал для всех кто хочет освоить или прокачать навыки программирования на Python. Присоединяйся, чтобы стать настоящим Python Ninja!

Связь: @sfoninja
Download Telegram
Совет по Python: декораторы с аргументами можно реализовать через класс

Чаще всего декораторы с параметрами пишут как вложенные функции, но Python позволяет использовать для этого и классы.

Достаточно реализовать два специальных метода: __init__() принимает аргументы декоратора. __call__() получает декорируемую функцию

class decorator_with_arguments:

def __init__(self, arg1, arg2):
self.arg1 = arg1
self.arg2 = arg2

def __call__(self, f):

def wrapped(*args, **kwargs):
return f(*args, **kwargs)

return wrapped


@decorator_with_arguments(3, "Python")
def doubler(number):
return number * 2


Что происходит: Вызывается decorator_with_arguments(3, "Python"). Создаётся экземпляр класса-декоратора Python передаёт функцию doubler в метод __call__(). __call__() возвращает обёртку wrapped. При вызове doubler() фактически выполняется wrapped()

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

✈️ Python Ninja
Please open Telegram to view this post
VIEW IN TELEGRAM
👍63🔥2
10 GitHub-репозиториев, которые стоит посмотреть AI-инженеру

1. Hands-On AI Engineering

Подборка AI-приложений и агентных систем с практическими кейсами использования LLM.

☝️ github.com/Sumanth077/Hands-On-AI-Engineering

2. Hands-On Large Language Models

Полный код из книги Hands-On Large Language Models: от основ до файнтюнинга.

☝️ github.com/HandsOnLLM/Hands-On-Large-Language-Models

3. AI Agents for Beginners

Бесплатный курс от Microsoft из 11 уроков по созданию AI-агентов.

☝️ github.com/microsoft/ai-agents-for-beginners

4. GenAI Agents

Большая коллекция туториалов и реализаций агентных систем.

☝️ github.com/NirDiamant/GenAI_Agents

5. Made With ML

Про разработку, деплой и поддержку production-ready ML-систем.

☝️ github.com/GokuMohandas/Made-With-ML

6. Learn Harness Engineering

Практический курс по Harness Engineering для AI-агентов.

☝️ github.com/walkinglabs/learn-harness-engineering

7. AutoResearch

Автономные циклы ML-экспериментов от Andrej Karpathy.

☝️ github.com/karpathy/autoresearch

8. Designing Machine Learning Systems

Конспекты и материалы по книге Chip Huyen.

☝️ github.com/chiphuyen/dmls-book

9. Awesome LLM Inference

Подборка материалов по инференсу LLM: Flash Attention, KV Cache, квантование и другое.

☝️ github.com/xlite-dev/Awesome-LLM-Inference

10. LLM Course

Практический курс по LLM с roadmap и Colab-ноутбуками.

☝️ github.com/mlabonne/llm-course

✈️ Python Ninja
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥4
Пособие Path to Senior Engineer Handbook собрало ресурсы для разработчиков, которые хотят вырасти до уровня Senior Engineer.

Внутри:

Более 50 рассылок по профессиональному росту, системному дизайну, лидерству и веб-разработке.

Подборка книг по коммуникации, техническому письму и построению рабочих отношений. Отобранные YouTube-каналы, подкасты и профессиональные сообщества.

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

Хорошая отправная точка для тех, кто хочет прокачивать не только технические навыки, но и архитектурное мышление, коммуникацию и лидерские компетенции.

✈️ Python Ninja
Please open Telegram to view this post
VIEW IN TELEGRAM
4👍2
Подарок для новичков: бесплатный интерактивный курс «Aprende SQL»

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

Ставь лайк и погнали учиться ❤️

☝️ Ссылка источник

✈️ Python Ninja
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4
Подарочек на выходные «PyChallenger» бесплатные мини‑курсы по Python

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

Учишься через практику, в браузере, шаг за шагом прокачивая свои навыки — от переменных до обработки данных

Начинай уже сегодня 🚨

☝️ Ссылка источник

✈️ Python Ninja
Please open Telegram to view this post
VIEW IN TELEGRAM
3🤝2
На Stepik запустили мощный курс по «Troubleshooting Docker и Kubernetes: поиск и устранение проблем»

В программе только важные аспекты:

— troubleshooting Docker и образов
— диагностика сетевых проблем
— настройка readiness/liveness probes
— отладка pod’ов, деплоев и ingress
— анализ логов контейнеров и кластера
— разбор ошибок CrashLoopBackOff, OOMKilled, ImagePullBackOff и других

Собеседования на DevOps/SRE сейчас всё чаще строятся вокруг реальных инцидентов. Данный курс фокусируется именно на таких сценариях и помогает в подготовке к практическим вопросам

48 часов доступен со скидкой 25%

↗️ Пройти курс на Stepik
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥3
Двойное подчёркивание и name mangling в Python

Что выведет код 👍

✈️ Python Ninja
Please open Telegram to view this post
VIEW IN TELEGRAM
3
Варианты
Anonymous Quiz
44%
A
24%
B
30%
C
1%
D
This media is not supported in your browser
VIEW IN TELEGRAM
Ловите подгон еще одна бесплатная полезная платформа для новичков

Ulearn.me — это образовательная онлайн платформа разработанная в компании СКБ Контур. Предлагает практические курсы по программированию например, основы Python, C# и информационной безопасности

Установка не требуется всё работает из коробки😎

☝️ Ссылка источник

✈️ Python Ninja
Please open Telegram to view this post
VIEW IN TELEGRAM
3
Media is too big
VIEW IN TELEGRAM
Полезная находка для работы с SQL

Тулза «Actually Explain» автоматически визуализирует PostgreSQL-запросы в виде интерактивных схем, помогая разобраться в JOIN'ах, подзапросах и связях между таблицами.

Забираем в работу за лайк 📖

☝️ Ссылка источник

✈️ Python Ninja
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4
При применении нескольких фильтров к серии в Pandas лучше разбивать условие на несколько строк:

s = pd.Series([10, 15, 20, 25, 30])

s.loc[
(s > 20) &
(s % 2 == 1)
]


Такой код проще читать, писать и поддерживать. В результате будет выбрано значение:

25


Поскольку оно одновременно больше 20 и является нечётным числом.

✈️ Python Ninja
Please open Telegram to view this post
VIEW IN TELEGRAM
3👍2
А вы знали, что в Python есть собственный модуль для сериализации данных?

Он называется pickle. Хотя pickle нельзя считать безопасным решением для работы с недоверенными данными, он может быть очень полезен для внутренней сериализации объектов в вашем приложении 📖

✈️ Python Ninja
Please open Telegram to view this post
VIEW IN TELEGRAM
3🔥2
Мой любимый способ работать с несколькими фильтрами

В pandas.Series не цепочка .loc, а один маск. Цепочка выглядит аккуратно, но ломается на реальных данных и легко даёт неожиданные результаты:

s = pd.Series([10, 15, 20, 25, 30])

s
.loc[s > 20]
.loc[s % 2 == 1]


Проблема в том, что второй .loc снова смотрит на исходный s, а не на уже отфильтрованный результат. Логика разъезжается. Надёжнее собрать всё в одно выражение:

s = pd.Series([10, 15, 20, 25, 30])

mask = (s > 20) & (s % 2 == 1)
result = s.loc[mask]


Одна маска = одна точка истины. Проще дебажить. Меньше сюрпризов при росте кода.

✈️ Python Ninja
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥4👍2
Подарок для ML-инженеров: онлайн учебник по Computer Vision от MIT

Эта книга охватывает широкий спектр тем: от базовых алгоритмов обработки изображений до современных методов глубокого обучения, такие как CNN, Transformers и современные AI-модели.

Множество иллюстраций, примеров и коротких глав делают книгу удобной как для последовательного изучения, так и для использования в качестве справочника 🙂

☝️ Ссылка источник

✈️ Python Ninja
Please open Telegram to view this post
VIEW IN TELEGRAM
🤝4🔥2
Путеводитель по миру Full Stack Python

Учебный ресурс, посвящённый полному циклу разработки веб-приложений на Python, где опытные разработчики словно оставили тебе записку: “Вот всё, что пригодится в реальной работе”

Здесь всё собрано в один мощный источник: от первых шагов в Python до тонкостей серверной архитектуры, деплоя и реального боевого опыта

Компетентный выбор для системного изучения 🥥

☝️ Ссылка источник

✈️ Python Ninja
Please open Telegram to view this post
VIEW IN TELEGRAM
5
Переменные в Python это стикеры, а не коробки.

Переменная не хранит значение, а указывает на него. Меняешь список обе переменные видят изменение. Со стикерами это логично. С коробками магия: две коробки загадочно меняются одновременно 📚

✈️ Python Ninja
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5
Логические операторы и приоритеты в Python

Что выведет код? 🪑

✈️ Python Ninja
Please open Telegram to view this post
VIEW IN TELEGRAM
6
Варианты
Anonymous Quiz
12%
A
37%
B
51%
C
🔥3
В сеть выложили мегагайд по запуску локальных LLM

Если давно хотели запускать нейронки у себя на ПК, но не знаете, с чего начать здесь разжевали всё. От выбора процессора и видеокарты до настройки llama.cpp и работы с памятью.

Отдельно разбираются оптимизация KV кэша, распределение нагрузки между RAM и GPU, а также способы ускорить генерацию на обычном железе без трат на покупки новых комплектующих.

Полезная шпаргалка для всех, кто хочет запускать модели локально и получать от них максимум 📖

☝️ Ссылка источник

✈️ Python Ninja
Please open Telegram to view this post
VIEW IN TELEGRAM
5🔥2
Исторический момент. Новый HTTP-метод в стандарте.

QUERY. Альтернатива GET и POST.

Как GET не меняет состояние ресурса. Как POST можно использовать тело запроса. Шлёшь JSON, кешируешь ответ.

Только что повышен до Proposed Standard.

✈️ Python Ninja
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥7
Трюк Python

Как получить список простых чисел

Длинный способ (много циклов):
primes = []
for x in range(1, 10):
count = 0
for y in range(1, x+1):
if x % y == 0:
count += 1
if count == 2:
primes.append(x)

print(primes) # [2, 3, 5, 7]


Короткий способ (используем filter и all):
primes = list(filter(
lambda x: all(x % y != 0 for y in range(2, x)),
range(2, 10)
))

print(primes) # [2, 3, 5, 7]


✈️ Python Ninja
Please open Telegram to view this post
VIEW IN TELEGRAM
7