Курс 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"
- Создание коллекций из генератора
- Упрощение работы с JSON-данными в Python
- Упрощенный вывод данных в Python
- Хеши в Python
- Создание и удаление объектов
- Defaultdict в Python
- Функция enumerate в Python
- Проверка однородности элементов списка
- Создание матрицы в Python
- Списки в Python: синтаксис представления
- Установка виртуального окружения Python
- Генерация UUID в Python
- Создание новых списков через list comprehensions
- Присоединение элементов коллекции
- Преобразование чисел в Python
- Печать комбинаций в Python с Itertools
- Оператор «not» в Python
- Управление пакетами с pip
- Генерация случайных чисел Python
- Генерация случайных чисел в Python
- Форматирование данных с помощью pprint
- Тестирование с unittest
- Создание задания в Cron
- Python и Юникод: работа с цифрами
- Подсчет элементов в Python
- Форматирование строк в Python.
- Асинхронное выполнение задач в Python
- Генерация UUID в Python
- Нан-рефлексивность в Python
- Избегайте ошибку FileNotFoundError
- Установка random seed в Python
- F-строки в Python
- Метод join() для объединения элементов строки
- Работа с эмодзи в Python
- Преобразование числа в список цифр
- Область видимости переменных
- Генераторы в Python
- Установка и использование библиотеки google
- Пропуск строк в файле с itertools
- Создание GUI на Tkinter
- Метод join() для объединения элементов строки
- Функция rsplit() в Python
- Работа с дробями в Python















