Курс Python → Создание и удаление объектов

В объектно-ориентированном программировании создание и удаление объектов играет важную роль. Для создания объекта используется метод new, который принимает первым аргументом тип класса, в котором он вызывается. Этот метод обычно возвращает тот же тип класса. Он часто используется для настройки создания экземпляров класса, особенно тех, которые наследуются от неизменяемых типов, таких как int, str или tuple.

Конструктор класса, обозначаемый методом __init__, используется для инициализации объектов. Он принимает в качестве первого аргумента self, который ссылается на сам объект, и может принимать другие аргументы для инициализации объекта. Этот метод вызывается автоматически при создании нового экземпляра класса.

Метод __init_subclass__ позволяет переопределить создание подклассов объекта. Этот метод вызывается при создании нового подкласса и позволяет выполнить дополнительные действия при создании подкласса. Например, он может быть использован для добавления дополнительной логики или атрибутов к подклассу.


class MyClass:
    def __new__(cls, *args, **kwargs):
        # Логика создания объекта
        instance = super().__new__(cls)
        return instance

    def __init__(self, value):
        self.value = value

    def __init_subclass__(cls):
        # Логика создания подкласса
        pass

Пример кода выше показывает использование методов __new__, __init__ и __init_subclass__ в классе Python. Эти методы позволяют настраивать создание объектов, инициализировать их и определять дополнительные действия при создании подклассов.

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

Автор урока

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

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

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

  1. Порядок операций в Python
  2. Работа с контекст-менеджером «with»
  3. Создание объекта времени
  4. Подписка на Kaspersky Team
  5. Оператор += для объединения строк
  6. Логирование с Logzero: ротация файла
  7. Преобразование вложенного списка
  8. Функции range() в Python
  9. Функция product() из itertools
  10. Тип данных TypeVarTuple
  11. Инвертирование словаря
  12. Работа с deque из collections
  13. Множественное присваивание в Python
  14. Печать месячного календаря
  15. Управление памятью в numpy.
  16. Метод title() в Python
  17. Метод count() для списков
  18. Проверка на истинность объектов в Python
  19. Метод join() для объединения строк
  20. Структура данных deque в Python
  21. Динамические маршруты во Flask
  22. Копирование списков в Python
  23. Списковое включение в Python
  24. Метод join() для объединения элементов
  25. Цикл while в Python
  26. Namedtuple в Python
  27. Скачать видео с YouTube
  28. Атрибуты класса и экземпляра в Python
  29. Преобразование в float
  30. Распаковка элементов последовательности
  31. Замена подстроки
  32. Функции в Python
  33. Функции высшего порядка в Python
  34. Вычисление разности множеств в Python
  35. Открытие, чтение и закрытие файла
  36. Использование super() в Python
  37. Удаление символа из строки
  38. Использование *args
  39. Работа с дробями в Python
  40. Активация Matplotlib в Jupyter
  41. Проверка однородности элементов списка
  42. Парсинг веб-страниц с Beautiful Soup
  43. Проверка на палиндром
  44. Работа со словарями Python
  45. Реализация операции -= для пользовательского класса
  46. Функция enumerate в Python

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