Курс 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
- Работа с каталогами в Python
- Описание скриптов в README
- Обработка исключений в Python
- Кортежи в Python: особенности и преимущества
- Работа с файловой системой в Python
- Инициализация переменных
- Списковое включение в Python
- Работа с контекстными менеджерами
- Функции с необязательными аргументами
- Python: библиотеки и функции
- Экспорт функций в Python
- Импорт модулей в Python 3.12
- Присоединение элементов коллекции
- Поиск наиболее частого элемента
- Метод getitem для доступа к элементам последовательности
- Форматирование строк в Python
- Lambda-функция в Python: использование с map() и sum()
- Enum в Python
- Просмотр атрибутов и методов класса
- Освобождение памяти в Python
- Избегайте изменяемых аргументов
- Генератор чисел Фибоначчи
- Инверсия списка и строки
- Работа с zip()
- Функция enumerate() в Python
- Функция product() из itertools
- Циклы for в Python
- Преобразование строк в числа с плавающей запятой
- Работа с комплексными числами
- Вывод сложных структур данных с помощью pprint
- Блок try…finally в Python
- Транспонирование матрицы
- Создание виртуальной среды
- Удаление дубликатов с сохранением порядка с помощью dict.fromkeys
- Цикл for в Python
- Разница между датами
- Работа с файлами в Python
- Декораторы в Python
- Управление асинхронными задачами на Python.
- Создание даты из строки ISO
- Метод join() для объединения строк
- Метод enumerate() в Python
- Управление памятью в Python
- Транспонирование 2D-массива с помощью zip
- Создание итератора















