Курс 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. Функция enumerate в Python
  2. Поиск с библиотекой Google
  3. Сортировка элементов с OrderedDict
  4. Генераторы в Python
  5. Метод lt для сортировки объектов
  6. Исключение NotImplementedError
  7. Enum в Python: создание и использование перечислений
  8. Конвертация коллекций в Python.
  9. Поиск уникальных и повторяющихся элементов
  10. Лямбда-функции для min/max
  11. Создание лямбда-функций
  12. Работа со списками
  13. Обработка исключений в Python
  14. Импорт классов из другого файла
  15. Избегайте двойного подчеркивания
  16. Преобразование Excel в PDF с Spire.XLS
  17. IPython и Jupyter Notebook: руководство
  18. Модуль math: основные функции
  19. Философия Python
  20. Генерация UUID в Python
  21. Создание уникального проекта
  22. Функция reduce() в Python
  23. Регистрация на хакатоне
  24. Генерация случайных чисел в Python
  25. Работа с изменяемыми списками
  26. Работа с модулем random
  27. Проверка подстроки в строке
  28. Множественное наследование в Python
  29. Перезапуск ячейки в Jupyter Notebook с dostoevsky
  30. Обмен переменными в Jupyter
  31. Кортеж в Python: создание, доступ, изменение
  32. Операции с кортежами
  33. Работа со слайсами
  34. Использование функции enumerate()
  35. Структурирование данных с Pydantic
  36. Асинхронное выполнение задач в процессах
  37. Python и Монти Пайтон
  38. Комментарии в Python
  39. Инверсия списков и строк в Python
  40. Работа с очередями в Python
  41. Модуль inspect: получение информации о объектах
  42. Удаление файлов в Python
  43. Оператор «моржа» (Walrus Operator)
  44. Декораторы в Python
  45. Модуль math: константы π и e

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