Курс 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
- Magic Commands — улучшение работы с Python
- Перевод эмодзи и эмотиконов.
- Распаковка с оператором *
- Декораторы классов
- Форматирование строк с помощью f-строк
- Получение размера объекта с sys.getsizeof()
- Структура данных deque в Python
- Атрибуты класса и экземпляра в Python
- Генерация чисел с range()
- Управление фоновыми задачами в Python
- SciPy: широкий функционал для математических операций
- Декораторы в Python
- Python Calendar Usage
- Класс-оболочка для словарей
- Печать месячного календаря
- Удаление URL-адресов в Python
- Тестирование с responses
- Удаление ресурса в Python
- Парсинг веб-страниц с Beautiful Soup
- Оператор == в Python
- Генерация случайных чисел Python
- Избегайте изменяемых аргументов
- Проверка версии Python
- Итераторы в Python
- Функции в Python: создание и вызов
- OrderedDict — упорядоченный словарь
- Работа с пользовательским вводом
- Создание объекта timedelta
- Цикл for в Python
- Работа с Requests для HTTP-запросов
- Python OrderedDict и fromkeys() — работа с словарями
- Открытие и запись файлов
- Явный импорт переменных
- Преобразование Word в PDF с Spire.Doc
- Работа с контекстным менеджером Pool
- Преобразование генераторов в циклы
- Транспонирование 2D-массива с помощью zip
- Очистка данных в Python
- Генерация случайных чисел в Python
- Роль ключевого слова self
- Работа с каталогами в Python
- Объединение словарей в Python















