FlatTree vom Dateisystem

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
droptix
User
Beiträge: 521
Registriert: Donnerstag 13. Oktober 2005, 21:27

Leonidas hat geschrieben:und ich denke ich hätte die Konstanten aus der Klasse rausgezogen.
Weil? Meinst du nach `__init__` verschieben oder komplett aus der Klasse raus?
Leonidas hat geschrieben:Ich denke dass man CreateID in der Klasse gar nicht braucht und das diese als Generator besser gelöst werden kann. Schließlich erwartet man ja sequenzille IDs.
Was ist ein Generator?
Leonidas hat geschrieben:Andererseits könnte das durch die Rekursion problematisch werden, denn Python hat ein Rekursionslimit.
`os.walk()` macht eigentlich genau dasselbe.
Leonidas
Python-Forum Veteran
Beiträge: 16025
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

droptix hat geschrieben:Weil? Meinst du nach `__init__` verschieben oder komplett aus der Klasse raus?
Ich würde es aus der Klasse rausholen.
droptix hat geschrieben:
Leonidas hat geschrieben:Ich denke dass man CreateID in der Klasse gar nicht braucht und das diese als Generator besser gelöst werden kann. Schließlich erwartet man ja sequenzille IDs.
Was ist ein Generator?
Das ist das was ich in Zeile 34 bis 40 in meinem Code habe. Ich definiere eine Funktion die unendlich lange läuft und IDs ausgibt und sich 'schlafen' legt. Beim nächsten Aufruf von .next() (Zeile 9) wird die Funktion dann um eine Iteration fortgesetzt, gibt wieder eine ID aus und 'schläft' weiter.
droptix hat geschrieben:
Leonidas hat geschrieben:Andererseits könnte das durch die Rekursion problematisch werden, denn Python hat ein Rekursionslimit.
`os.walk()` macht eigentlich genau dasselbe.
Stimmt, hast recht. Ich denke aber, dass das Speichern von 20 os.walk() Zuständen die sich rekursiv Aufgerufen haben, speicherschonender ist als das Speichern von 20 AddFileSystemItem() Zuständen.
Ich kann mich aber auch irren.
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
Antworten