Программистика
关闭频道
Лучший канал про python Ссылка для друга: https://t.me/+Ai6ughKtf5g2ZmFi Купить рекламу: https://telega.in/c/+Ai6ughKtf5g2ZmFi Админ: @JeyRahol По рекламе: @ReivuManager
显示更多5 576
订阅者
-324 小时
-427 天
-12130 天
帖子存档
5 576
СОБЫТИЕ.Новогодние скидки до 8% в парк-квартале
В СОБЫТИИ на Мосфильмовской – ограниченный пул квартир с праздничной выгодой! Не упустите уникальную возможность переехать в готовый квартал с современной инфраструктурой и парком.
• Камерный формат: секции от 10 этажей, от 3 квартир на этаже
• Потолки до 6,24 м, окна редкой высоты – 2,76 м
• Эксклюзивные лоты: двусветные, с террасами, каминами, окнами в пол, окнами в ванных
• Элегантное лобби: авторский интерьер, эксклюзивная мебель, дизайнерские светильники
• В доме – фитнес-рум, детская, репетиторская, коворкинг
• Общественные террасы на крышах
• Природный парк 12 га рядом с домом
Спешите с покупкой, количество квартир ограничено!
Перейти на сайт
#реклама
dom-sobytie.ru
О рекламодателе
5 576
Что произойдет, если в дочернем классе переопределить метод без вызова super()?
5 576
⚙️ ООП в Python без иллюзий: класс — это не серебряная пуля
Многие упарываются по классам и наследованию, но жесткая реальность: в продакшене эти приёмы часто усложняют поддерживаемость и вызывают неожиданные баги.
🧱 Классические заблуждения старичков
🟢 "Всё наследуем!"
class A: ... class B(A): ...На деле — усложнение и хрупкая иерархия. Часто проще композиция через объекты. 🟢 Overriding ради overriding — забыли
super()
class Base:
def run(self): ...
class Child(Base):
def run(self): ... # забыли super().run()
— появление скрытых багов в поведении.
🟢 Миксуют классы и dataclasses, получая конфликт методов и неявное дублирование данных.
🟢 Используют магические методы getattr/setattr для "красоты", не просчитав риски перехвата важных атрибутов → глухие баги.
📌 Как делать правильно
1️⃣ Наследование — в крайних случаях. Если можно — композиция через свойства и методы. 2️⃣ Всегда вызывай super(), если перекрываешь родительские методы (особенно init и del). Это защищает от потери важной логики базового класса. 3️⃣ Не смешивай dataclass и обычные классы без крайней необходимости. В dataclass — только структура, в обычных классах — поведение. 4️⃣ Если нужно динамическое управление атрибутами — используй slots или property, а не магию getattr.🧪 Бонус: абстракция через protocol from typing import Protocol
class Runner(Protocol):
def run(self) -> None: ...
def process(r: Runner):
r.run()
💡 Запомни
🟢 Класс — не магия, а удобный контейнер для кода 🟢 Наследование опасно без хорошей причинно-следственной связи 🟢 super() — твой амулет от багов 🟢 Композиция и протоколы — ключ к гибкому, масштабируемому кодуПрограммистика || #Статья
5 576
😈 Senior-безопасник создал крутейший канал про ИБ
Благодаря простым картинкам даже новичок поймет основы хакинга и информационной безопасности.
Присоединяйтесь: @infosec
5 576
Профессия: Python-разработчик
Книга позволит вам получить знания, достаточные для профессии Python-разработчик (начиная с уровня Junior Developer). Это даст вам возможность устройства на работу программистом, или возможность работать на себя – искать заказы на фриланс-биржах, создавать свои собственные приложения и игры, а затем выпускать их на таких площадках как Google Play, Steam и подобных.Программистика|| #Книги
5 576
Роадмап Python разработчика — Что учить / На что забить [2025]
📱 ПервоисточникПрограммистика|| #video
5 576
Что произойдет, если в кастомном контекст-менеджере реализовать только метод __enter__, но забыть __exit__?
5 576
⚙️ context manager без розовых очков: with не всё делает за тебя
Многие ставят
with везде, но на деле важны детали реализации — иначе ресурс может не закрыться или появится скрытая проблема.
🧱 Типичные ошибки новичков
🟢 Думают, что with — это просто “красиво закрывает файл”:
with open('x.txt') as f:
data = f.read()
Но если внутри блока возникнет ошибка — ты не узнаешь причину без логов!
🟢 Создают свои менеджеры, но не реализуют оба метода:
class Locker:
def __enter__(self): pass
# забыли __exit__!
🟢 Хранят ресурсы вне блока, забывают, что они уже закрыты:
with open('x.txt') as f:
lines = f.readlines()
# потом используют f — будет ошибка!
🟢 Используют try...finally вместо with, теряя лаконичность и надежность.
📌 Как правильно
1️⃣ Всегда реализуй оба метода __enter__ и __exit__ — даже если думаешь, что не нужно.
class MyManager:
def __enter__(self): ...
def __exit__(self, exc_type, exc_val, exc_tb): ...
2️⃣ Для простых менеджеров — лучше использовать декоратор contextlib:
from contextlib import contextmanager
@contextmanager
def my_resource():
setup()
try:
yield
finally:
cleanup()
3️⃣ Не храни ссылку на объект вне блока — ресурс закроется после выхода из with!
🧪 Бонус: цепочка менеджеров
with open('x.txt') as f1, open('y.txt') as f2:
# оба файла откроются и закроются независимо
💡 Запомни:
🟢 with — не магия, а строгий контроль ресурсов 🟢 Самописный менеджер = 2 метода обязательно 🟢 contextlib помогает писать лаконично 🟢 Всегда проверяй, где и как ты используешь ресурсы — иначе баги будут неожиданныеПрограммистика || #Статья
5 576
Пет-проект на Python за 50 минут. Курс по FastAPI для начинающих
📱 ПервоисточникПрограммистика|| #video
5 576
Более 20 нейросетей без VPN, по одной подписке!
Пишите код, генерируйте текст и изображения. Оплата Российской картой, публичное API, без VPN. Aijora.ru
Узнать больше
#реклама 16+
aijora.ru
О рекламодателе
5 576
🐍 PythonTurbo — твой помощник в мире Python!
Русскоязычный ресурс, где объясняют просто и по делу — без воды, платных подписок и лишней теории.
Здесь ты найдёшь:
➡️ Пошаговые объяснения и понятные примеры ➡️ Разбор популярных библиотек и задач ➡️ Готовые куски кода под реальные проекты💡 Подойдёт, если хочешь освежить базу, быстро вспомнить синтаксис или разобраться в новой теме. 🌐 Ссылка: тут Программистика || #Course
5 576
Python для начинающих. Учимся программировать с помощью мини-игр и загадок
Есть такие книги, которые не грузят теорией, а играют с тобой. Эта — именно такая. Вместо скучных «переменных и циклов» тут загадки, головоломки и мини-игры, которые сами втягивают в процесс. Каждая глава — это маленькое приключение: сегодня создаёшь генератор паролей, завтра — игру, а послезавтра уже шутишь в стиле Шекспира, только через код. Книга подойдёт тем, кто вообще не писал код, и тем, кто уже пробовал, но хочет «вкатиться» в Python без боли. Она не обещает «сделать из тебя senior за неделю», зато даст уверенное понимание основ и сделает обучение в кайф.Программистика|| #Книги
现已上线!2025 年 Telegram 研究 — 年度关键洞察 
