Курс 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. Работа с collections в Python.
  4. Модуль math: константы π и e
  5. Извлечение чисел из текста
  6. Получение ID текущего процесса
  7. Работа с Colorama
  8. Описание скриптов в README
  9. Работа с файлами в Python
  10. Методы shutil для работы с файлами
  11. Работа с модулем os в Python
  12. Подсчет элементов в Python
  13. Подсчет элементов с помощью Counter из collections
  14. Стать Python-разработчиком
  15. Форматирование данных с помощью pprint
  16. HTTP-запросы с библиотекой Requests
  17. Проверка переменных окружения в Python
  18. Блок else в Python
  19. Функции высшего порядка в Python
  20. Многострочные комментарии в Python
  21. Карта бомбоубежищ в Москве и Питере
  22. Метод add для класса Vector
  23. Установка и использование Virtualenv
  24. Генераторы в Python
  25. Метод enumerate() в Python
  26. Преобразование данных в Python
  27. Определение размера папок в Python
  28. Управление ресурсами с контекстными менеджерами
  29. Расчет времени выполнения программы
  30. Выбор редактора кода.
  31. Отрицательные индексы списков
  32. Модуль future Python
  33. Сравнение объектов в Python
  34. Нахождение максимального значения и его индекса в списке
  35. Вложенные функции в Python
  36. capitalize() — изменение регистра первого символа строки
  37. Метод enumerate() в Python
  38. Обработка исключения UnboundLocalError
  39. Оператор zip в Python
  40. Операторы увеличения и уменьшения переменной
  41. Метод сравнения объектов в Python
  42. Работа с набором данных CIFAR10 в PyTorch
  43. Запуск Python из интерпретатора
  44. Группировка элементов в словарь
  45. Генераторы в Python
  46. Объединение строк с помощью метода join

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