Курс Python → Атрибуты класса и экземпляра
Атрибуты класса в Python — это переменные, которые относятся ко всем экземплярам данного класса. Они определяются внутри класса, но вне любых методов, используя синтаксис self.atribute_name. Эти атрибуты доступны для всех экземпляров данного класса и могут быть изменены через любой из них.
Атрибуты экземпляра, с другой стороны, относятся только к конкретному экземпляру класса. Они создаются внутри методов класса и могут быть доступны только через данный экземпляр. Для создания атрибута экземпляра используется синтаксис self.atribute_name, но уже внутри метода класса.
При обращении к атрибуту класса, если он не найден в словаре текущего класса, Python будет автоматически искать его в родительских классах. Это позволяет наследовать атрибуты класса и использовать их в дочерних классах без необходимости их повторного определения.
class MyClass:
class_attribute = 10
def __init__(self, instance_attribute):
self.instance_attribute = instance_attribute
obj1 = MyClass(5)
obj2 = MyClass(8)
print(obj1.class_attribute) # Вывод: 10
print(obj2.class_attribute) # Вывод: 10
print(obj1.instance_attribute) # Вывод: 5
print(obj2.instance_attribute) # Вывод: 8
В данном примере, class_attribute является атрибутом класса, общим для всех экземпляров класса, а instance_attribute — атрибутом экземпляра, уникальным для каждого экземпляра. При обращении к атрибутам класса и экземпляра, Python автоматически учитывает наследование и поиск в родительских классах.
Другие уроки курса "Python"
- Ключевое слово global в Python
- Разделение строк в Python
- Создание директории в Python
- Объединение словарей в Python
- Создание веб-приложения с Flask
- Работа с Enum в Python3.
- Создание новых списков
- Оформление кода по PEP 8
- Деление в Python
- Создание виртуальной среды
- Управление контекстом выполнения
- Создание OrderedDict
- Декораторы в Python
- Удаление символов новой строки в Python.
- Функции в одну строку
- Список и кортеж в Python
- Функциональное программирование в Python
- Отделение звука от видео
- Именованные аргументы в Python
- Необязательные аргументы в Python
- Работа с модулем glob в Python
- Очистка данных в Python
- Преобразование кортежа в словарь.
- Логирование с Logzero
- Названия столбцов в Python таблицах
- Расширение операции побитового «и» в Python
- Python itertools combinations() — группировка элементов
- JSON-esque в Python
- Генератор чисел Фибоначчи
- Создание циклической ссылки
- Отладка утечек памяти в Python
- Дизассемблирование Python кода
- Взаимодействие с sys
- Регулярные выражения: метод match
- Бинарный поиск
- Функция sleep() в Python
- Переопределение метода __or__()
- Асинхронное программирование с asyncio
- Метод __index__ в Python
- Удаление элемента из списка в Python
- Объединение коллекций в Python
- Создание GUI с Tkinter: Entry
- Циклы for в Python
- Изменяемые и неизменяемые объекты
- Округление в Python
- Python: отсутствие точек с запятыми















