Курс 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. Преобразование PowerPoint в PDF.
  2. Строковое представление объектов
  3. Форматирование строк в Python
  4. Обработка исключений в Python 3
  5. Оператор «or» в Python
  6. Логирование с Loguru
  7. Аннотации типов в Python
  8. Тестирование времени с Freezegun
  9. Измерение времени выполнения кода
  10. Работа с исключениями в Python
  11. Курс по дообучению ChatGPT
  12. Назначение максимального и минимального значения переменной в Python.
  13. Вакансии в Nebius
  14. Работа с CSV файлами в Python
  15. Создание словаря с значением по умолчанию
  16. Контроль точности вывода чисел
  17. split() — разделение строки
  18. Библиотека sh: удобные команды терминала
  19. Использование функции enumerate()
  20. Нахождение пересечения множеств
  21. Colorama: окрашивание текста в Python
  22. Декораторы в Python
  23. Изменение регистра данных
  24. Модуль xkcd: загрузка комиксов
  25. Управление контекстом выполнения
  26. Python itertools combinations() — группировка элементов
  27. Работа с Path в Python
  28. Печать комбинаций в Python с Itertools
  29. Использование defaultdict в Python
  30. Библиотека schedule: планировщик задач
  31. Срезы в Python
  32. Работа с эмодзи в Python
  33. Именование переменных в Python
  34. Python enumerate() использование
  35. Проверка окончания строки с помощью str.endswith()
  36. Сравнение строк в Python
  37. Удаление дубликатов из списка
  38. Роль запятой в Python
  39. Протокол управления контекстом
  40. Работа с GitHub в Telegram
  41. Скрытие вывода данных
  42. Форматирование строк в Python
  43. Отладка в командной строке
  44. Управление контекстом с помощью декоратора contextmanager
  45. Combobox в Tkinter
  46. Работа с множествами в Python
  47. Деление в Python
  48. Объединение Python и Shell

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