Курс 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"
- Роль ключевого слова self
- Создание множества в Python
- Форматирование строк с помощью f-строк
- Профилирование с cProfile
- Нарезка списков в Python
- Синхронизация потоков с time.sleep()
- Мощь вложенных функций в Python
- Печать календаря в Python
- Работа с модулем cmath
- Bootle — простой веб-фреймворк
- Импорт модулей в Python 3.12
- Методы __repr__ и __str__ в Python
- Переменные в Python: сокращение гласных
- Python-dateutil — работа с датами
- Docstring в Python
- Базовые объекты Python
- Генераторные функции в Python
- Экранирование символов в Python
- Установка пакета в Python
- Функция sleep() в Python
- Настройка Cron
- Добавление Progressbar в Python
- Объединение множеств в Python
- Отступы в Python
- Метод join() для объединения строк
- Операции с матрицами в Python
- Python enumerate() использование
- Извлечение аудио из видео
- Создание генераторов
- Работа с модулем random
- Метод invert для побитового отрицания
- kwargs в Python
- Выражения-генераторы в Python
- Создание Radio кнопок в tkinter
- Генераторы в Python
- Цикл for в Python
- Проверка наличия элемента в списке
- Лямбда-функции в defaultdict
- Цикл for в Python
- Создание таблиц в Python с PrettyTable
- Установка Git и AWS CLI
- None в Python: использование и особенности
- Установка Python — Простое руководство
- Обмен значений переменных в Python
- Идентификатор объекта в Python
- Область видимости переменных
- Нахождение хеша для бесконечности и NaN в Python















