Курс 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. Многострочные комментарии в Python
  3. Подсчет элементов с помощью Counter
  4. Оформление текста в консоли с TermColor
  5. Перевод двоичного кода в целое число
  6. Управление контекстом выполнения
  7. Библиотека funcy: удобные утилиты
  8. Работа с файловой системой в Python
  9. Цикл for в Python
  10. Python: цикл for и оператор присваивания
  11. Оптимизация памяти с __slots__
  12. Измерение времени выполнения кода
  13. Подсчет частоты элементов с Counter
  14. Работа с аргументами командной строки
  15. Удаление ресурса в Python
  16. Модуль Operator в Python
  17. Поиск подстроки в строке
  18. Генерация строк с .join()
  19. Декоратор проверки активности
  20. Генерация случайных чисел в Python
  21. Лямбда-функции в Python
  22. Работа с WindowsPath()
  23. Объединение словарей в Python
  24. Конкатенация строк с методом join()
  25. Работа с индексами списков
  26. Создание словарей и множеств в Python.
  27. Модуль itertools: комбинации и перестановки
  28. Удаление ключа из словаря
  29. Оператор is в Python
  30. Изменение элемента списка
  31. Обработка исключений в Python
  32. Работа с массивами в Numpy
  33. Переименование файлов в Python
  34. Стать Python-разработчиком
  35. Деление в Python
  36. Метод rsub в Python: расширение функциональности вычитания
  37. Метод split() для разделения строк
  38. Генераторы списков
  39. Определение размера папок в Python
  40. Список импортированных модулей в Python
  41. Работа с модулем Calendar
  42. Извлечение чисел из текста
  43. Форматирование строк с помощью f-строк
  44. Удаление элементов во время итерации
  45. Метод rlshift для битового сдвига

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