Как вызвать метод конкретного родителя в python?

Аватар пользователя Ivan Mamtsev
Ivan Mamtsev
29 октября 2024

В Python можно вызвать метод конкретного родителя с помощью встроенной функции super(). super() возвращает прокси-объект, который делегирует вызовы методов данного класса к его базовому классу.

Для вызова метода конкретного родителя, необходимо передать в super() два аргумента: первым аргументом указать текущий класс, а вторым аргументом указать экземпляр этого класса. Затем, вызвать метод родителя, передав его имя и необходимые аргументы.

class A:
    def method(self):
        print("A method")

class B(A):
    def method(self):
        print("B method")

class C(B):
    def method(self):
        # Вызов метода класса A, пропуская B
        super(B, self).method()
        print("C method")

c = C()
c.method()
# A method
# C method

В данном примере, метод method() класса C вызывает метод method() класса B с помощью super(), а затем продолжает выполнение своей собственной логики.

0 0
Познакомьтесь с основами Python бесплатно