Курс 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 enumerate() функции
- Генераторы в Python
- Получение текущей даты в Python
- Сортировка с помощью key
- Настройка Cron
- Работа с файлами в Python
- Конвертация коллекций в Python.
- Создание и использование ChainMap
- Python Поверхностное Копирование
- Функция format() в Python
- Множественное наследование в Python
- Поиск кода
- Игра «Угадывание чисел»
- Фильтрация элементов с помощью islice
- Python union() функция — объединение множеств
- Создание вложенных циклов for
- Проверка подстроки в строке с помощью in
- Расчет времени выполнения
- Обработка исключений в Python
- Замеры производительности в Python
- Зарезервированные слова в Python
- Отладчик pdb: начало работы
- Функция enumerate в Python
- Объединение словарей в Python
- Использование эмодзи в Python
- Создание и операции с дробями
- Работа с модулем random
- Объединение словарей в Python
- Открытие и запись файлов
- Работа с IP-адресами в Python
- Python: возвращение нескольких значений
- Обмен значений переменных в Python
- Очистка данных с Pandas
- Инверсия списка и строки
- Модуль math: константы π и e
- Возврат значений из генератора
- Метод __index__ в Python
- Пустой оператор pass в Python
- Подсчет элементов с помощью Counter
- Defaultdict в Python
- Статическая типизация в Python
- Форматирование строк в Python
- Тип CodeType в Python.
- Python UserString — создание подклассов строк
- Декоратор для группы пользователей в Django
- Необязательные аргументы в Python
- Оператор break в Python















