Курс 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
  2. Перемещение и удаление файлов в Python
  3. Отношения подклассов в Python
  4. Установка пакетов с помощью pip
  5. Стать Python-разработчиком
  6. Тестирование времени с Freezegun
  7. Генераторы в Python
  8. Приближение чисел в Python
  9. Принципы программирования
  10. Добавление элемента в список.
  11. Фильтрация списка от «ложных» значений
  12. Управление виртуальными окружениями в Python
  13. Разделение списка на гнппы
  14. Обновление и получение данных в SQLite
  15. Форматирование данных с помощью pprint
  16. Решение переменной Шредингера
  17. Делегирование в Python
  18. Создание задания в Cron
  19. Функции min(), max(), sum()
  20. Итерация по копии коллекции
  21. Функция zip() в Python
  22. Инициализация структур данных
  23. Переопределение метода __and__
  24. Иерархия классов в Python
  25. Создание словаря через dict comprehension
  26. Методы сравнения множеств
  27. Удаление дубликатов в pandas
  28. Перебор элементов списка в Python
  29. Подсчет элементов в списке с Counter
  30. Работа с рекламными данными в Pandas
  31. Обработка аргументов Python
  32. Библиотека sh: использование команд bash в Python
  33. Игра «Угадывание чисел»
  34. Переменные в Python: сокращение гласных
  35. Numpy: объединение массивов
  36. Правила именования переменных
  37. Нахождение максимального значения и его индекса в списке
  38. Установка и использование emoji
  39. Извлечение аудио из видео
  40. Преобразование чисел в восьмеричную строку
  41. Глубокое копирование объектов
  42. Удаление элемента из списка в Python
  43. 9 уловок для чистого кода

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