Курс 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"
- Генераторы в Python
- Методы сравнения множеств
- Константы в модуле cmath
- Список переменных в Python
- Блок else в циклах.
- Модуль Antigravity в Python 3
- Отладчик pdb: начало работы
- Операции с числами в Python
- Применение функции к списку
- Магические методы в Python
- Метод сравнения объектов в Python
- Типы возвращаемых значений в Python
- Отступы в Python
- Перевернуть список в Python
- Инверсия списка/строки в Python
- Измерение времени выполнения
- Преобразование кортежа в словарь.
- Эффективная конкатенация строк в Python
- Добавление элемента к кортежу
- Работа с библиотекой xkcd
- Сумма элементов списка
- Очистка входных данных
- Magic Commands — улучшение работы с Python
- Форматирование заголовков в Python
- Проверка однородности элементов списка
- Поиск анаграмм с Counter
- Работа с итераторами в Python
- Управление асинхронными задачами с помощью Semaphore
- Метод Event.wait() в Python
- Многопоточность в Python
- Импорт в Python: список all
- capitalize() — изменение регистра первого символа строки
- Установка библиотек в Python
- Объединение списков в Python
- Атрибуты класса и экземпляра
- Модуль pprint: улучшение вывода данных
- Удаление элементов из списка в Python.
- Оператор деления для класса Rational
- Векторизация в Python с NumPy.
- Codecademy в Telegram
- Функции в Python: создание и вызов
- Отладка утечек памяти в Python
- Метод rsub для пользовательских чисел
- Создание словарей с defaultdict()















