Почему «вернуть себя» возвращает «Нет»?
м пытается получить верхний узел цепочки вgetTopParent()
, Когда я распечатаюself.name
, это действительно печатает имя родительского экземпляра; однако, когда я вернусьself
, он возвращает None. Почему это?
class A:
def __init__( self, name ):
self.name = name
self.owner = None
def setChild( self, l ):
l.owner = self
def getTopParent( self ):
if( self.owner == None ): # None == top parent
print( "Got top: %s" % self.name )
return self
else:
print( "checking %s" % self.name )
self.owner.getTopParent()
a = A( "parent" )
b = A( "child1" )
c = A( "child2" )
d = A( "child3" )
a.setChild( b )
b.setChild( c )
c.setChild( d )
print( d.getTopParent() )
>>> checking child3
checking child2
checking child1
Got top: parent
None