Курс 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"
- Преобразование PowerPoint в PDF.
- Строковое представление объектов
- Форматирование строк в Python
- Обработка исключений в Python 3
- Оператор «or» в Python
- Логирование с Loguru
- Аннотации типов в Python
- Тестирование времени с Freezegun
- Измерение времени выполнения кода
- Работа с исключениями в Python
- Курс по дообучению ChatGPT
- Назначение максимального и минимального значения переменной в Python.
- Вакансии в Nebius
- Работа с CSV файлами в Python
- Создание словаря с значением по умолчанию
- Контроль точности вывода чисел
- split() — разделение строки
- Библиотека sh: удобные команды терминала
- Использование функции enumerate()
- Нахождение пересечения множеств
- Colorama: окрашивание текста в Python
- Декораторы в Python
- Изменение регистра данных
- Модуль xkcd: загрузка комиксов
- Управление контекстом выполнения
- Python itertools combinations() — группировка элементов
- Работа с Path в Python
- Печать комбинаций в Python с Itertools
- Использование defaultdict в Python
- Библиотека schedule: планировщик задач
- Срезы в Python
- Работа с эмодзи в Python
- Именование переменных в Python
- Python enumerate() использование
- Проверка окончания строки с помощью str.endswith()
- Сравнение строк в Python
- Удаление дубликатов из списка
- Роль запятой в Python
- Протокол управления контекстом
- Работа с GitHub в Telegram
- Скрытие вывода данных
- Форматирование строк в Python
- Отладка в командной строке
- Управление контекстом с помощью декоратора contextmanager
- Combobox в Tkinter
- Работа с множествами в Python
- Деление в Python
- Объединение Python и Shell















