Курс 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"
- Создание класса в Python
- Работа с кортежами
- Работа с аргументами командной строки
- Списки в Python
- Импорт модулей в Python 3.12
- Работа с изменяемыми списками
- Строки в Python: апострофы и кавычки
- Python Enum Weekday Usage
- Срез списка в Python
- Копирование и вставка текста в Python
- Создание новых списков в Python
- Combobox в Tkinter
- Метод ifloordiv для пользовательских классов
- Работа с буфером обмена на Python
- Отступы в Python
- Функции min(), max(), sum()
- Настройка Cron
- Отображение графиков в Jupyter с Matplotlib
- Делегирование в Python
- Python: отсутствие точек с запятыми
- Автоматизация с Python
- Генерация случайных чисел в Python
- Сравнение объектов в Python
- Работа с файловой системой в Python
- Тайное преобразование типа ключа
- Конкатенация строк с методом join()
- Управление асинхронными задачами с помощью Semaphore
- Использование функции product
- Лямбда-функции в Python
- Деление в Python
- Функция enumerate() в Python
- Объединение списков в Python.
- Работа с zip-архивами в Python
- Установка и использование pyshorteners
- Метод rmatmul для обратного матричного умножения
- Импорт модулей в Python 3.12
- Параллельные вычисления в Python
- Аннотации типов в Python
- Нарезка списков в Python
- Перегрузка операторов в Python
- Загрузка постов Instagram
- Операции с числами в Python
- Операции с комплексными числами
- Декораторы в Python
- Определение размера папок в Python
- Вычисление разности множеств в Python
- Выражения-генераторы в Python
- Документация функции help() в Python
- Функции-генераторы в Python
- Возврат нескольких значений из функции















