Уведомления

Группа в Telegram: @pythonsu

#1 Июнь 4, 2016 21:07:47

ivanzzz
Зарегистрирован: 2016-02-08
Сообщения: 58
Репутация: +  0  -
Профиль   Отправить e-mail  

Что такое super()

В чем смысл super(), когда можно напрямую через базовый класс обратится к конструктору?

class A():
    def __init__(self,g):
        self.g = g
class B(A):
    def __init__(self,g):
        self.g = g
        A.__init__(self)
class C(A):
    def __init__(self,g):
        self.g = g
        super().__init__()

Офлайн

#2 Июнь 5, 2016 15:42:23

4kpt_IV
Зарегистрирован: 2016-01-08
Сообщения: 999
Репутация: +  49  -
Профиль   Отправить e-mail  

Что такое super()

Вызывает метод родителя в обход метода дочернего класса.

Офлайн

#3 Июнь 5, 2016 15:45:21

ivanzzz
Зарегистрирован: 2016-02-08
Сообщения: 58
Репутация: +  0  -
Профиль   Отправить e-mail  

Что такое super()

то есть можно вызвать даже переопределенную функцию?

Офлайн

#4 Июнь 5, 2016 17:42:43

4kpt_IV
Зарегистрирован: 2016-01-08
Сообщения: 999
Репутация: +  49  -
Профиль   Отправить e-mail  

Что такое super()

Да.

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version