Logo
TGCATALOG
Каталог Подборки Блог
Код на салфетке - Python кодинг

Код на салфетке - Python кодинг

Канал о программировании на Python и других языках. Простые объяснения и коды.

Нет оценок
318
27.10.2026
318
27.10.2026
Нет оценок
318
27.10.2026
Безопасный переход через бот
О канале

Канал о программировании на Python и других языках. Простые объяснения и коды.

Подписчиков 2,347
Тематика Технологии
Язык Русский
Ссылка t.me/napkincode

Также рекомендуем

Kekaton AI | Озвучка и клон голоса
Kekaton AI | Озвучка и клон голоса
Бот

AI бот для озвучки текста и клонирования голоса в Telegram. Создавай аудио с помощью нейросети быстро и просто.

Описание

Ресурс для интересующихся программированием. Фокус на Python, но охватывает и другие темы. Простые примеры и разборы.

Последние посты

Код на салфетке - Python кодинг
Код на салфетке - Python кодинг
🔒Открыть пост
и посмотреть медиа
Знаете ли вы, что у объекта нет методов? Методы не хранятся в самом объекте – они хранятся в классе. Обычно у инстанса есть свой __dict__, и при создании он пустой. Когда Python читает obj.x, он ищет по цепочке: сначала в obj.__dict__, потом в __dict__ класса, потом выше по наследованию. Методы находятся на втором шаге – поэтому кажется, что они принадлежат объекту, хотя на самом деле нет. class User: role = "viewer" def greet(self): return f"Hello, {self.role}" u = User() print(u.__dict__) # {} — инстанс пустой print("greet" in u.__dict__) # False — метода здесь нет print("role" in User.__dict__) # True — атрибут класса здесь print("greet" in User.__dict__) # True — метод тоже здесь greet и role определены в классе – там они и лежат. Инстанс u создан пустым: u.__dict__ не содержит ничего, пока не присвоить атрибут явно через u.x = .... Из этого следует кое-что интересное: атрибут, записанный напрямую в __dict__ инстанса, перекрывает обычный одноименный атрибут класса. class User: role = "viewer" u = User() print(u.role) # viewer — Python нашел в User.__dict__ u.__dict__["role"] = "admin" print(u.role) # admin — инстанс перекрыл класс del u.__dict__["role"] print(u.role) # viewer — снова из класса Порядок поиска такой: u.__dict__ -> User.__dict__ -> выше по цепочке. Как только нашел – возвращает. Поэтому запись в __dict__ инстанса как бы затмевает атрибут класса, не удаляя его. class BaseUser: active = True class User(BaseUser): role = "viewer" u = User() print(u.active) # True — нашел в BaseUser.__dict__, прошел всю цепочку u.__dict__["active"] = False print(u.active) # False — инстанс перекрыл print(BaseUser.active) # True — BaseUser.__dict__ не тронут Это стандартный механизм – на нем работают instance variables, которые пишутся через self.x = ... в __init__. Каждый раз это просто запись в obj.__dict__. Но это не вся история. Когда Python находит объект в User.__dict__ – он не всегда возвращает его напрямую. Если у найденного объекта есть метод __get__, Python вызывает его. Именно поэтому u.greet и User.greet возвращают разные вещи – об этом поговорим на следующей неделе. Код на салфетке x Кусочки кода
Код на салфетке - Python кодинг
Динамика подписчиков
+-0.4% за 30 дней
Текущие
2,347
Месяц назад
2,356
Средний рост
+0 / день
Обновлено
1 день назад

Отзывы о канале Код на салфетке - Python кодинг

Авторизуйтесь, чтобы оставить отзыв

Только зарегистрированные пользователи могут делиться своим мнением.

Пока нет отзывов

Станьте первым, кто поделится своим впечатлением об этом ресурсе!

Похожие ресурсы

Loading
Переход на светлую тему
Главная Каталог Подборки Блог Вход