Курс 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. Создание коллекций из генератора
  2. Упрощение работы с JSON-данными в Python
  3. Упрощенный вывод данных в Python
  4. Хеши в Python
  5. Создание и удаление объектов
  6. Defaultdict в Python
  7. Функция enumerate в Python
  8. Проверка однородности элементов списка
  9. Создание матрицы в Python
  10. Списки в Python: синтаксис представления
  11. Установка виртуального окружения Python
  12. Генерация UUID в Python
  13. Создание новых списков через list comprehensions
  14. Присоединение элементов коллекции
  15. Преобразование чисел в Python
  16. Печать комбинаций в Python с Itertools
  17. Оператор «not» в Python
  18. Управление пакетами с pip
  19. Генерация случайных чисел Python
  20. Генерация случайных чисел в Python
  21. Форматирование данных с помощью pprint
  22. Тестирование с unittest
  23. Создание задания в Cron
  24. Python и Юникод: работа с цифрами
  25. Подсчет элементов в Python
  26. Форматирование строк в Python.
  27. Асинхронное выполнение задач в Python
  28. Генерация UUID в Python
  29. Нан-рефлексивность в Python
  30. Избегайте ошибку FileNotFoundError
  31. Установка random seed в Python
  32. F-строки в Python
  33. Метод join() для объединения элементов строки
  34. Работа с эмодзи в Python
  35. Преобразование числа в список цифр
  36. Область видимости переменных
  37. Генераторы в Python
  38. Установка и использование библиотеки google
  39. Пропуск строк в файле с itertools
  40. Создание GUI на Tkinter
  41. Метод join() для объединения элементов строки
  42. Функция rsplit() в Python
  43. Работа с дробями в Python

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