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

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

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


✈️ Python Ninja
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥6
Изменение атрибута экземпляра в методе класса

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

✈️ Python Ninja
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3
Варианты
Anonymous Quiz
66%
A
12%
B
12%
C
10%
D
Жирный подгон новичкам «Coddy» широкая подборка курсов и задач

На этой страничке «Coddy» собрано всё самое вкусное по Python: курсы, задачки, проекты и челленджи. Хотите научиться с нуля или подтянуть конкретную тему тут есть и основы, и тонкости, и куча примеров для тренировки

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

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

✈️ Python Ninja
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥5
Ага... понятно 😧

✈️ Python Ninja
Please open Telegram to view this post
VIEW IN TELEGRAM
🤝72
Совет по Python: Использование setdefault

Метод setdefault() позволяет заменить 4 строки традиционного кода, избавляя от необходимости использовать условие if и ручную инициализацию.

setdefault() чётко передаёт намерение: «Если ключ отсутствует, установить для него пустой список. Затем добавить элемент в список». Это одновременно делает код короче и понятнее

Есть ли причины использовать это вместо collections.defaultdict? 🤔


Хороший вопрос. Думаю, основное различие в том, что с setdefault можно указывать разное значение по умолчанию при каждом вызове, тогда как у defaultdict одно общее значение для всех отсутствующих ключей. Метод setdefault также удобен тем, что не требует импорта

✈️ Python Ninja
Please open Telegram to view this post
VIEW IN TELEGRAM
👍41
Принёс полезное «CSES Problem Set» тренажёр по алгоритмам

Невероятно огромная подборка задач для тренировки алгоритмов. Подойдёт и новичкам (простые ввод-вывод и базовые структуры), и тем, кто готов копать глубже (динамика, графы, числа)

Отличная площадка чтобы писать код на Python, оттачивать алгоритмическое мышление и готовиться к собесам 🔍

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

✈️ Python Ninja
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5
Перестаньте использовать if obj == None и используйте if obj is None

В Python, когда вы пишете:
obj == None


Вы на самом деле не спрашиваете напрямую, является ли obj значением None; вместо этого вы проверяете, равен ли объект None. Хотя во многих случаях результат будет таким же, как у следующего кода:

obj is None


Поведение этих двух вариантов отличается и это важно. Когда вы используете:

obj == None


Python вызывает метод eq у объекта. Это значит, что сам объект решает, что означает «равенство с None». А этот метод можно переопределить. Если obj это экземпляр класса, который реализует eq так, что он возвращает True при сравнении с None (даже если это не None), тогда obj == None может вернуть неверный результат

Например:
class Weird:
def __eq__(self, other):
return True # Всегда считает себя равным

obj = Weird()

print(obj == None) # True
print(obj is None) # False


Здесь видно, что obj == None возвращает True из-за переопределённого поведения оператора eq. Это означает, что при использовании obj == None результат может быть непредсказуемым.

С другой стороны, когда вы пишете:

obj is None


Вы используете оператор is, который нельзя переопределить. Это означает, что результат всегда будет надёжным. Оператор is проверяет идентичность объектов, то есть указывают ли две переменные на один и тот же объект. Поскольку None это singleton (единственный экземпляр), obj is None это правильный и самый эффективный способ проверки

👑 Поэтому всегда рекомендуется и считается лучшей практикой использовать obj is None вместо obj == None это обеспечивает предсказуемость и эффективность

✈️ Python Ninja
Please open Telegram to view this post
VIEW IN TELEGRAM
👍32
Проверка списка на пустоту через сравнение с True

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

✈️ Python Ninja
Please open Telegram to view this post
VIEW IN TELEGRAM
3
Варианты
Anonymous Quiz
57%
A
30%
B
13%
C
Принёс сокровищницу: сотни задач от «CodeHS Practice» для прокачки кода

Секретная тренировочная арена для программистов, где тебя ждут сотни тщательно отобранных задач разных уровней сложности, распределённые по языкам и темам

Мгновенная проверка которая честно скажет, если что-то пошло не так. Отличное место, чтобы набить руку, потестить себя и почувствовать, что в коде начинаешь плавать уверенно

Даже ошибка это шаг вперёд

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

✈️ Python Ninja
Please open Telegram to view this post
VIEW IN TELEGRAM
5🔥2🤩2
Нашёл годную подборку cheat sheets по ML и Data Science

Подборка шпаргалок, охватывающая ключевые темы ML: регрессия, PCA, ансамбли, нейросети и другие базовые концепции. Всё сжато в удобные PDF без лишней воды, только суть

Плюс есть разборы под интервью: краткие выжимки, типовые вопросы и доп. материалы. Отличный способ быстро освежить знания и понять, что тебя реально будут спрашивать 😮

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

✈️ Python Ninja
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥4
Почему студенты Python спят спокойно 📖

✈️ Python Ninja
Please open Telegram to view this post
VIEW IN TELEGRAM
🤝5
Ловите подгон Microsoft выкатил новый курс по MCP для Python-разработчиков

Содержит три последовательных модуля:

🟠базовая настройка окружения и введение в MCP
🟠пример реализации сервера «Python Study Buddy» с базовыми вызовами
🟠расширенный «AI Research Learning Hub» с инструментами и ресурсами


Лутай знания и апай свой скилл 🎮

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

✈️ Python Ninja
Please open Telegram to view this post
VIEW IN TELEGRAM
3🔥3
Краткая шпаргалка по Git: основные команды и workflow

Сохрани за лайк чтобы не гуглить 😘

✈️ Python Ninja
Please open Telegram to view this post
VIEW IN TELEGRAM
3
Хорошие новости для сообщества из мира Linux-гейминга

В экосистеме Linux появилось новое объединение разработчиков Open Gaming Collective: клуб по интересам для тех, кто хочет сделать игры Linux стабильнее, быстрее и удобнее

Вместо разрозненных патчей и форков общий стек, единые решения и курс в сторону upstream

Забавная деталь: коллектив открытых технологий возглавляет представитель Microsoft 😞

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

✈️ Python Ninja
Please open Telegram to view this post
VIEW IN TELEGRAM
3
Откопал в Твиттере мощную подборку из 30 статей по системному дизайну

Коротко, по делу, с примерами и кодом. Сокровищница если хочешь прокачать базу или освежить знания

Формат простой одна статья в день и ровно месяц полезного чтения 🤫

Забираем в закладки:
1. Что такое API
2. Что такое вебхуки
3. REST vs GraphQL
4. Что такое API Gateway
5. Балансировщики нагрузки
6. Алгоритмы балансировки нагрузки
7. Прокси vs Обратный прокси
8. Что такое масштабируемость
9. Что такое доступность
10. Как избежать единой точки отказа (SPOF)
11. Объяснение теоремы CAP
12. 15 типов баз данных и когда их использовать
13. 7 ключевых различий между SQL и NoSQL
14. Что такое ACID-транзакции
15. Подробное руководство по индексам в базах данных
16. Шардинг vs Партиционирование
17. Объяснение последовательного хеширования
18. CDC (Change Data Capture)
19. Кэширование
20. Топ-5 стратегий кэширования
21. 7 стратегий вытеснения кэша
22. CDN
23. Алгоритмы ограничения скорости
24. Очереди сообщений
25. Фильтры Блума
26. Идемпотентность в распределённых системах
27. Конкурентность vs Параллелизм
28. Stateful vs Stateless
29. Long Polling vs WebSockets
30. Пакетная (batch) vs потоковая (stream) обработка данных


✈️ Python Ninja
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥4
Инкапсуляция и изменение приватного атрибута в Python

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

✈️ Python Ninja
Please open Telegram to view this post
VIEW IN TELEGRAM
3
Варианты
Anonymous Quiz
38%
A
17%
B
24%
C
21%
D