Sto imparando a conoscere Python OOP. Nel codice sorgente di qualche framework, ho trovato return super(...
e mi chiedevo se ci fosse una differenza tra i due.Qual è la differenza tra `super (...)` e `return super (...)`?
class a(object):
def foo(self):
print 'a'
class b(object):
def foo(self):
print 'b'
class A(a):
def foo(self):
super(A, self).foo()
class B(b):
def foo(self):
return super(B, self).foo()
>>> aie = A(); bee = B()
>>> aie.foo(); bee.foo()
a
b
Sembra uguale a me. So che l'OOP può diventare piuttosto complicato se lo si lascia, ma non ho i mezzi per trovare un esempio più complesso a questo punto del mio apprendimento. C'è una situazione in cui la restituzione di super
sarebbe diversa dalla chiamata super
?
Qual è la differenza tra '" x "' e 'return" x "'? – user2246674