Сокровищница изучения Kubernetes: Fast-Kubernetes от теории к практике
Kubernetes всегда сложно «схватить» по кускам и этот репозиторий помогает быстро собрать целостную картину
Здесь не простая теория, а целый набор практических LAB’ов и cheat-sheet’ов, где разбираются ключевые сущности: Pods, Deployments, Services, ConfigMaps, Volumes, Ingress и многое другое
Хороший вариант для ускоренного погружения и закрепления базы📚
☝️ Ссылка источник
✈️ Python Ninja
Kubernetes всегда сложно «схватить» по кускам и этот репозиторий помогает быстро собрать целостную картину
Здесь не простая теория, а целый набор практических LAB’ов и cheat-sheet’ов, где разбираются ключевые сущности: Pods, Deployments, Services, ConfigMaps, Volumes, Ingress и многое другое
Хороший вариант для ускоренного погружения и закрепления базы
Please open Telegram to view this post
VIEW IN TELEGRAM
❤2
Сокровищница изучения алгоритмов: онлайн-книга Algorithms от Jeff Erickson
Не просто учебник а полноценный курс по алгосам с лекциями, задачками и теорией. Здесь собраны все ключевые темы: рекурсия, потоки, динамическое программирование, графы, NP-задачи, всё что по настоящему формирует твоё алгоритмическое мышление
Подойдёт не для «первого знакомства», а для тех, кто хочет выйти на уровень сильного инженера📚
☝️ Ссылка источник
✈️ Python Ninja
Не просто учебник а полноценный курс по алгосам с лекциями, задачками и теорией. Здесь собраны все ключевые темы: рекурсия, потоки, динамическое программирование, графы, NP-задачи, всё что по настоящему формирует твоё алгоритмическое мышление
Подойдёт не для «первого знакомства», а для тех, кто хочет выйти на уровень сильного инженера
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3❤2
Небольшой Python-трюк: как кастомизировать поведение списка
Класс UserList из модуля collections в Python используется для создания пользовательских объектов, работающих как список, но с кастомным поведением. Он выступает базовым классом, от которого можно наследоваться, если нужно реализовать собственные структуры данных со специализированными методами и логикой.
Допустим, вы хотите создать список с кастомным методом append(), разрешив добавлять только чётные числа. Код ниже показывает, как это можно реализовать через UserList.
В этом примере метод append() переопределён так, чтобы разрешать добавление только чётных чисел. Если передать нечётное число, выводится сообщение о том, что нечётные значения запрещены. Метод sort() также переопределён и всегда сортирует список в обратном порядке.
Когда экземпляр obj вызывается с аргументом 3, который является нечётным числом, выводится сообщение
✈ Python Ninja
Класс UserList из модуля collections в Python используется для создания пользовательских объектов, работающих как список, но с кастомным поведением. Он выступает базовым классом, от которого можно наследоваться, если нужно реализовать собственные структуры данных со специализированными методами и логикой.
Допустим, вы хотите создать список с кастомным методом append(), разрешив добавлять только чётные числа. Код ниже показывает, как это можно реализовать через UserList.
В этом примере метод append() переопределён так, чтобы разрешать добавление только чётных чисел. Если передать нечётное число, выводится сообщение о том, что нечётные значения запрещены. Метод sort() также переопределён и всегда сортирует список в обратном порядке.
Когда экземпляр obj вызывается с аргументом 3, который является нечётным числом, выводится сообщение
"Non-even numbers not allowed", а сам список остаётся без измененийPlease open Telegram to view this post
VIEW IN TELEGRAM
❤5
❤3
Совет по Python
Многие проверяют начало строки через цикл, хотя Python позволяет сделать это гораздо короче и чище:
✈ Python Ninja
Многие проверяют начало строки через цикл, хотя Python позволяет сделать это гораздо короче и чище:
user_string = input()
starts = ("One", "Two", "Three")
# Не по-питоновски
for s in starts:
if user_string.startswith(s):
print("Совпадение найдено")
break
# По-питоновски
if user_string.startswith(starts):
print("Совпадение найдено")
startswith() и endswith() могут принимать кортеж значений это делает код компактнее, читаемее и избавляет от лишних цикловPlease open Telegram to view this post
VIEW IN TELEGRAM
❤7
Ловите подгон книга «Think Python»
Бесплатная онлайн‑книга, которая вводит в мир Python с самых азов: от переменных и условий до рекурсии, классов и объектов, шаг за шагом раскрывая язык программирования, при этом позволяя сразу запускать код в браузере
Оставайтесь любопытными вот что я бы сказал начинающим🔥
☝️ Ссылка источник
✈ Python Ninja
Бесплатная онлайн‑книга, которая вводит в мир Python с самых азов: от переменных и условий до рекурсии, классов и объектов, шаг за шагом раскрывая язык программирования, при этом позволяя сразу запускать код в браузере
Оставайтесь любопытными вот что я бы сказал начинающим
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6❤3
Cовет по Python: не путайте has-a и is-a в ООП
При проектировании классов важно понимать разницу между композицией и наследованием:
Примеры:
Один класс является разновидностью другого класса.
Примеры:
Простое правило:
Если объект содержит что-то → композиция (🥥
✈ Python Ninja
При проектировании классов важно понимать разницу между композицией и наследованием:
has-a композиция. Один объект содержит другой объект или данные внутри себя.class Person:
def __init__(self, name):
self.name = name # Person has-a name
Примеры:
Person has-a nameCar has-a coloris-a наследованиеОдин класс является разновидностью другого класса.
class Employee(Person):
pass # Employee is-a Person
Примеры:
Employee is-a PersonCar is-a VehicleПростое правило:
Если объект содержит что-то → композиция (
has-a). Если объект является разновидностью чего-то → наследование (is-a). Во многих случаях композиция делает код гибче и проще для поддержки Please open Telegram to view this post
VIEW IN TELEGRAM
❤4
Cовет по Python: не превращайте тернарный оператор в квест на внимательность
Да, Python позволяет писать такие конструкции. Но чем больше условий в одной строке тем хуже читаемость
Простое правило: если условий 3 и больше лучше перейти на обычный
• comprehensions
• lambda-выражений
•
Короткий код не всегда хороший код🎩
✈ Python Ninja
Да, Python позволяет писать такие конструкции. Но чем больше условий в одной строке тем хуже читаемость
'A' if s >= 90 else 'B' if s >= 80 else 'C' if s >= 70 else 'F'
Простое правило: если условий 3 и больше лучше перейти на обычный
if / elif / else. Тернарный оператор лучше оставить для коротких и понятных случаев:• comprehensions
• lambda-выражений
•
return в одну строкуКороткий код не всегда хороший код
Please open Telegram to view this post
VIEW IN TELEGRAM
❤6
Бесплатная онлайн книга "Automate the Boring Stuff with Python"
Руководство по использованию Python для автоматизации повседневных задач. Автор предлагает практические примеры, связанные с обработкой файлов, работой с электронными таблицами, веб-автоматизацией и другими прикладными задачами📚
☝️ Ссылка источник
✈️ Python Ninja
Руководство по использованию Python для автоматизации повседневных задач. Автор предлагает практические примеры, связанные с обработкой файлов, работой с электронными таблицами, веб-автоматизацией и другими прикладными задачами
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥7
Методы в Python хранятся на уровне класса, а не экземпляра
Тогда как Python находит метод при вызове
Сначала Python ищет атрибут в экземпляре (_i_nstance).
Если не найден проверяет класс (_c_lass).
Дальше родительские классы (_p_arent).
В конце
Именно поэтому метод можно определить один раз в классе, а использовать через любой экземпляр🤓
✈️ Python Ninja
Тогда как Python находит метод при вызове
x.m()? Правило ICPO:Сначала Python ищет атрибут в экземпляре (_i_nstance).
Если не найден проверяет класс (_c_lass).
Дальше родительские классы (_p_arent).
В конце
object, корневой базовый класс (_o_bject).Именно поэтому метод можно определить один раз в классе, а использовать через любой экземпляр
Please open Telegram to view this post
VIEW IN TELEGRAM
❤2
Наследование в Python меняет путь поиска атрибутов
Также известный как «method resolution order» (MRO):
То есть MRO показывает, в каком порядке Python будет искать методы и атрибуты: сначала в классе потомке, затем в родителях по цепочке, и в конце в базовом👋
✈️ Python Ninja
Также известный как «method resolution order» (MRO):
class Child:
pass
Child.__mro__ # (__main__.Child, object)
class Child(Parent):
pass
Child.__mro__ # (__main__.Child, __main__.Parent, object)
То есть MRO показывает, в каком порядке Python будет искать методы и атрибуты: сначала в классе потомке, затем в родителях по цепочке, и в конце в базовом
object Please open Telegram to view this post
VIEW IN TELEGRAM
❤2👍2
Карманный AI-переводчик или полноценная LLM весом всего 440MB
Tencent продолжают продвигать тренд «маленьких, но мощных» моделей
Hy-MT1.5-1.8B-1.25bit это translation LLM, которая после экстремального сжатия весит всего около 440MB, но при этом поддерживает десятки языков и локальный запуск даже на мобильных устройствах
Такие модели показывают, что качественный перевод и серьёзные возможности LLM уже начинают помещаться буквально в кармане
☝️ Ссылка источник
✈️ Python Ninja
Tencent продолжают продвигать тренд «маленьких, но мощных» моделей
Hy-MT1.5-1.8B-1.25bit это translation LLM, которая после экстремального сжатия весит всего около 440MB, но при этом поддерживает десятки языков и локальный запуск даже на мобильных устройствах
Такие модели показывают, что качественный перевод и серьёзные возможности LLM уже начинают помещаться буквально в кармане
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4
Сохраняйте это золото для изучения LLM
LLM Architecture Gallery это огромная коллекция архитектур современных AI-моделей с визуальными схемами и пояснениями
GPT, Llama, Qwen, DeepSeek, Gemma, Mistral, MoE, attention-механизмы, сравнение архитектур и полезные ресерчи всё собрано в одном месте
☝️ Ссылка источник
✈️ Python Ninja
LLM Architecture Gallery это огромная коллекция архитектур современных AI-моделей с визуальными схемами и пояснениями
GPT, Llama, Qwen, DeepSeek, Gemma, Mistral, MoE, attention-механизмы, сравнение архитектур и полезные ресерчи всё собрано в одном месте
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3
👍3
Microsoft выкатили вводный мини-курс по созданию AI-агентов
AI-агенты сегодня становятся частью современной разработки, и этот курс помогает разобраться в теме системно
Авторы делают акцент на инженерном подходе: как проектировать поведение агентов, разделять планирование и выполнение, контролировать действия и строить системы, которые можно масштабировать
Хороший вход в тему без лишней воды⌨️
☝️ Ссылка источник
✈️ Python Ninja
AI-агенты сегодня становятся частью современной разработки, и этот курс помогает разобраться в теме системно
Авторы делают акцент на инженерном подходе: как проектировать поведение агентов, разделять планирование и выполнение, контролировать действия и строить системы, которые можно масштабировать
Хороший вход в тему без лишней воды
Please open Telegram to view this post
VIEW IN TELEGRAM
❤3