Курс 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"
- Фильтрация списков с itertools
- Работа с Path в Python
- Разделение строки с помощью re.split()
- Сортировка и разворот списка
- Отладка производительности Python
- Работа с контекстными переменными
- Counter() — подсчет элементов
- Python itertools combinations() — группировка элементов
- Профилирование кода на Python
- Сравнение строк в Python
- Проверка типов с помощью isinstance
- Модуль antigravity: генерация координат
- Представление бесконечности в Python
- Область видимости переменных
- Работа с YAML в Python
- Принципы LSP и ISP в Python
- Список переменных в Python
- Перехват исключений в Python
- Метод setdefault() в Python
- Счетчик ссылок в Python
- Работа с изображениями Pillow
- Копирование объектов в Python
- Декораторы в Python
- Работа с timedelta
- Сортировка с помощью параметра key
- Новшества Flask 2.0
- Извлечение новостей с newspaper3k
- Идентификатор объекта в Python
- Python Enumerate
- Оператор walrus в Python
- Оптимизация памяти с __slots__
- Транспонирование 2D-массива с помощью zip
- Создание матрицы в Python
- Создание Telegram-бота на Python
- Вставка переменных в шаблоны Flask
- Метод append() для списка
- Переворот списка в Python
- Использование двоеточия в Python
- Ввод нескольких значений
- Транспонирование 2D-массива с помощью zip
- Стать Python-разработчиком
- Форматирование строк в Python
- Обмен значений переменных в Python
- Работа с deque из collections
- Многострочные комментарии в Python
- Преобразование вложенного списка
- Получение частей дроби
- Профилирование с Pandas
- Многострочные строки в Python















