Курс Python → Атрибуты класса и экземпляра
В Python атрибуты класса и атрибуты экземпляра играют важную роль в объектно-ориентированном программировании. Атрибуты класса — это переменные, которые определены внутри класса, но вне методов. Они доступны для всех экземпляров этого класса и используются для хранения общей информации, которая должна быть общей для всех объектов данного класса. Например, в классе «Сотрудник» атрибут класса может быть «количество сотрудников», который будет увеличиваться при создании нового экземпляра.
Атрибуты экземпляра — это переменные, которые определены внутри методов класса и доступны только для конкретного экземпляра класса. Они используются для хранения уникальной информации об объекте. Например, в классе «Сотрудник» атрибут экземпляра может быть «имя» или «зарплата» конкретного сотрудника.
Python обрабатывает переменные класса и переменные экземпляра как словари объекта класса. Если имя переменной не найдено в словаре текущего класса, то выполняется поиск по нему в родительских классах. Это позволяет наследовать атрибуты и методы от родительских классов, что делает код более модульным и удобным для использования.
class Employee:
num_employees = 0 # атрибут класса
def __init__(self, name, salary):
self.name = name # атрибут экземпляра
self.salary = salary
Employee.num_employees += 1
В приведенном примере у класса «Employee» есть атрибут класса «num_employees», который хранит количество созданных сотрудников. При создании нового экземпляра увеличивается это значение. Также у каждого экземпляра есть атрибуты «name» и «salary», которые хранят имя и зарплату конкретного сотрудника.
Используя атрибуты класса и атрибуты экземпляра, можно эффективно организовать данные и логику в программе, делая ее более понятной и удобной для разработки и поддержки.
Другие уроки курса "Python"
- Метод join для объединения строк
- %pinfo: получение информации об объекте
- Форматирование вывода с F-строками
- Работа со слайсами
- Анонимные функции Lambda
- Очистка данных с Pandas
- Работа с модулем os в Python
- Декораторы в Python
- Декоратор Property в Python
- Явный импорт в Python
- Оптимизация памяти с помощью __slots__
- Определение объема памяти объекта
- Символ подчеркивания в Python
- Модуль pprint
- Операция += для списков
- Модуль itertools: комбинации и перестановки
- Срезы в Python
- Объединение словарей в Python
- Библиотека schedule: планировщик задач
- Переопределение метода len
- Замена подстроки
- Удаление первого элемента списка
- Структурирование именованных констант
- Работа со словарями Python
- Сортировка с помощью параметра key
- Форматирование строк в Python
- Создание именованных кортежей в Python
- Разделение функций на этапы
- Установка и использование Telegram API в Python
- Создание класса очереди
- Получение пути к текущему скрипту с помощью os
- Python и Монти Пайтон
- Упрощение условных выражений с тернарным оператором
- Работа с NumPy массивами
- Создание виртуальной среды
- Регистрация на курсы SF Education
- Преобразование строк в числа в Python
- Различия символов в Python
- Добавление Progressbar в Python
- Методы работы со списками
- Многопоточность и асинхронное программирование в Python
- Counter() — подсчет элементов
- Работа с комплексными числами в Python
- Округление в Python
- Очистка данных с помощью pandas
- Преобразование данных в Python















