Курс Python → Атрибуты класса и экземпляра

Атрибуты класса в Python — это переменные, которые относятся ко всем экземплярам данного класса. Они определяются внутри класса, но вне любых методов, используя синтаксис self.atribute_name. Эти атрибуты доступны для всех экземпляров данного класса и могут быть изменены через любой из них.

Атрибуты экземпляра, с другой стороны, относятся только к конкретному экземпляру класса. Они создаются внутри методов класса и могут быть доступны только через данный экземпляр. Для создания атрибута экземпляра используется синтаксис self.atribute_name, но уже внутри метода класса.

При обращении к атрибуту класса, если он не найден в словаре текущего класса, Python будет автоматически искать его в родительских классах. Это позволяет наследовать атрибуты класса и использовать их в дочерних классах без необходимости их повторного определения.


class MyClass:
    class_attribute = 10
    
    def __init__(self, instance_attribute):
        self.instance_attribute = instance_attribute

obj1 = MyClass(5)
obj2 = MyClass(8)

print(obj1.class_attribute)  # Вывод: 10
print(obj2.class_attribute)  # Вывод: 10

print(obj1.instance_attribute)  # Вывод: 5
print(obj2.instance_attribute)  # Вывод: 8

В данном примере, class_attribute является атрибутом класса, общим для всех экземпляров класса, а instance_attribute — атрибутом экземпляра, уникальным для каждого экземпляра. При обращении к атрибутам класса и экземпляра, Python автоматически учитывает наследование и поиск в родительских классах.

Твои коллеги будут рады, поделись в

Автор урока

Дмитрий Комаровский
Дмитрий Комаровский

Автоматизация процессов
в КраснодарБанки.ру

Другие уроки курса "Python"

  1. Python enumerate() функции
  2. Генераторы в Python
  3. Получение текущей даты в Python
  4. Сортировка с помощью key
  5. Настройка Cron
  6. Работа с файлами в Python
  7. Конвертация коллекций в Python.
  8. Создание и использование ChainMap
  9. Python Поверхностное Копирование
  10. Функция format() в Python
  11. Множественное наследование в Python
  12. Поиск кода
  13. Игра «Угадывание чисел»
  14. Фильтрация элементов с помощью islice
  15. Python union() функция — объединение множеств
  16. Создание вложенных циклов for
  17. Проверка подстроки в строке с помощью in
  18. Расчет времени выполнения
  19. Обработка исключений в Python
  20. Замеры производительности в Python
  21. Зарезервированные слова в Python
  22. Отладчик pdb: начало работы
  23. Функция enumerate в Python
  24. Объединение словарей в Python
  25. Использование эмодзи в Python
  26. Создание и операции с дробями
  27. Работа с модулем random
  28. Объединение словарей в Python
  29. Открытие и запись файлов
  30. Работа с IP-адресами в Python
  31. Python: возвращение нескольких значений
  32. Обмен значений переменных в Python
  33. Очистка данных с Pandas
  34. Инверсия списка и строки
  35. Модуль math: константы π и e
  36. Возврат значений из генератора
  37. Метод __index__ в Python
  38. Пустой оператор pass в Python
  39. Подсчет элементов с помощью Counter
  40. Defaultdict в Python
  41. Статическая типизация в Python
  42. Форматирование строк в Python
  43. Тип CodeType в Python.
  44. Python UserString — создание подклассов строк
  45. Декоратор для группы пользователей в Django
  46. Необязательные аргументы в Python
  47. Оператор break в Python

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