[Python-de] rekursiver aufruf in klasse

Frank Immich frankimmich at gmx.de
Wed Aug 8 15:13:29 EDT 2001


Hallo zusammen , ich bräuchte ein wenig Nachhilfe in Bezug auf Klassen.
Verwenden und selber schreiben ist doch ein Unterschied... 
Wie realisiere ich einen rekursiv Aufruf in einer Klasse. Beispiel :
Ich habe ein Dictionary mit jeweils (child:parent , child:parent.....). Das
ganze ist verschachtelt. 
Die Funktion ist ganz einfach: 

dic = {.......}
idlist =[]
def getchilds(id):
	for child,parent in dic.items():
		if parent == id:
			idlist.append(child)
			getchilds(child)
	return idlist

print getchilds(id_no)

Wie macht man das als Klasse ????
Mein Versuch ist bis jetzt : 

class getc:
    def __init__(self):
        self.idlist =[]
        self.dic = dic
    def getid(self, id):
        self.id = id
        for child,parent in self.dic.items():
                    if parent == self.id:
                            self.idlist.append(child)
                            self.getid(child)
        return self.idlist

Das klappt aber nicht...läuft immer nur einmal durch.
Leider steige ich durch diese ganze Namesraumgeschichte nicht durch. 
Ich bin über jeden Tipp dankbar.
Ciao Frank 

-- 
Aufgepasst - jetzt viele 1&1 New WebHosting Pakete ohne
Einrichtungsgebuehr + 1 Monat Grundgebuehrbefreiung!
http://puretec.de/index.html?ac=OM.PU.PU003K00736T0492a




More information about the Python-de mailing list