Курс 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. Оператор «or» в Python
  2. Оператор Walrus в Python 3.8
  3. Создание новой даты в Python
  4. Работа с кортежами в Python
  5. Управление мышью и клавиатурой с Pyautogui
  6. Просмотр внешнего файла в Python
  7. Функции range() в Python
  8. Закрытие файла в Python
  9. Работа со списками
  10. Поиск подстроки в строке
  11. Поиск с библиотекой Google
  12. Шаблоны Flask: условия и циклы
  13. Получение комбинаций в Python
  14. Поиск индекса элемента
  15. Функция product() в Python
  16. 9 уловок для чистого кода
  17. Оптимизация памяти с __slots__
  18. Инициализация объекта
  19. capitalize() — изменение регистра первого символа строки
  20. Управление доступом к модулю
  21. Отправка HTTP-запросов с User-Agent
  22. Метод сравнения объектов в Python
  23. Подробная информация о %pinfo
  24. Передача словаря через **kwargs
  25. Удаление дубликатов из списка
  26. Создание словарей с defaultdict()
  27. Вычисление фазы комплексного числа
  28. Конвертация коллекций в Python.
  29. Избегайте ошибку FileNotFoundError
  30. Перетасовка списков в Python
  31. Регистрация на хакатоне
  32. Протокол управления контекстом
  33. Множественное присваивание в Python
  34. Удаление элементов из списка
  35. Дизассемблирование Python кода
  36. Декоратор total_ordering для сравнения объектов
  37. Разница между датами
  38. Метод enumerate() в Python
  39. Функция reversed() в Python
  40. Объединение списков в Python
  41. Базовые объекты Python
  42. Создание новых функций через partial
  43. Создание лямбда-функций
  44. Функции в Python
  45. Оператор @ для умножения матриц
  46. Установка User-Agent в Python
  47. Печать в одной строке

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