Курс 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 Метод del.
  2. Удаление дубликатов с сохранением порядка с помощью dict.fromkeys
  3. Проверка элементов списка условием
  4. Переопределение метода len
  5. Python enumerate() для работы с индексами
  6. Оформление текста в консоли с TermColor
  7. Python enumerate() использование
  8. Функции map, filter, reduce
  9. Работа с файловой системой в Python
  10. Сортировка данных в Python
  11. Распаковка элементов последовательности
  12. Дефолтные параметры в Python
  13. Многострочные строки в Python
  14. split() без разделителя
  15. Изменяемые и неизменяемые объекты
  16. Преобразование символов с помощью map
  17. Получение размера объекта с sys.getsizeof()
  18. Создание виртуальной среды
  19. Простой калькулятор Python
  20. Поиск файлов по шаблону
  21. CSV строка разделение в Python
  22. Поиск индекса элемента в списке
  23. Объединение списков в Python
  24. Управление контекстом с помощью декоратора contextmanager
  25. Модуль itertools: эффективная работа с итераторами
  26. Модуль subprocess: запуск внешних команд
  27. Печать календаря
  28. Лимиты на ресурсы Python
  29. Форматирование заголовков в Python
  30. Python UserString — создание подклассов строк
  31. Обратный список чисел
  32. Подписка на каналы разработчиков
  33. Запрос пароля с помощью getpass
  34. Обработка StopIteration в Python
  35. Метод bool() в Python
  36. Проекты на Python
  37. Глобальные переменные в Python
  38. Поиск простых чисел
  39. Работа с модулем cmath
  40. Ноутбуки AMD Ryzen ™ 4000: мощность и эффективность
  41. Декораторы в Python
  42. Работа с JSON данными в Python
  43. Установка User-Agent в Python
  44. Получение текущей даты в Python
  45. Хэш-функции и метод цепочек
  46. Добавление кнопки в tkinter
  47. Возвращение нескольких значений через кортеж или класс
  48. Защита данных в Python

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