Курс 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"

  1. Итераторы в Python
  2. Установка пакета в Python
  3. Класс Counter() для подсчета элементов
  4. Явный импорт в Python
  5. Форматирование строк в Python
  6. Декораторы с аргументами
  7. Форматирование строк с помощью f-строк
  8. Вызов функций по строке в Python.
  9. Замена текста с помощью sub
  10. Отправка поздравлений по дню рождения
  11. Управление памятью в numpy.
  12. Создание задания в Cron
  13. Создание генераторов
  14. Перевернуть список в Python
  15. Python Enumerate
  16. Кортежи в Python: особенности и преимущества
  17. Конвертация коллекций в Python.
  18. Избегание изменяемых аргументов
  19. Форматирование даты с strftime()
  20. Объединение словарей в Python
  21. Библиотека Chartify: руководство
  22. Любовь к Python
  23. Метод ifloordiv для пользовательских классов
  24. Выключение компьютера с помощью Python
  25. Особенности множеств в Python
  26. Удаление дубликатов из списка с помощью dict.fromkeys
  27. Группы исключений в Python
  28. Локальные переменные.
  29. Создание уникального множества
  30. Логические значения в Python
  31. Оператор in в Python
  32. 9 уловок для чистого кода
  33. Bootle — простой веб-фреймворк
  34. Поиск индексов подстроки
  35. Запрос пароля с помощью getpass
  36. Распаковка элементов массива
  37. Создание таблиц в терминале с PrettyTable
  38. Python OrderedDict и fromkeys() — работа с словарями
  39. Выражения-генераторы в Python
  40. Работа со словарями Python
  41. Расчет времени выполнения
  42. Ошибка NotImplemented в Python
  43. Генераторы в Python
  44. Принципы Zen of Python
  45. Создание треугольника Паскаля
  46. Сокращение ссылок с pyshorteners

Marketello читают маркетологи из крутых компаний