Ich habe eine sehr große Liste von Objekten welche alle Referenzen auf andere Objekte haben. Also jedes Objekt hat Referenzen auf ein paar andere der Objekte. Nun wollte ich die Daten picklen, aber es kommt
f=open("test.pickle","wb")
p=pickle.Pickler(f)
p.dump(nodes)
>>> Fatal Python error: Cannot recover from stack overflow.
Kann ich das irgendwie steuern, damit Pickle es einfacher hat? Er soll also nicht schon beim ersten Objekt in alle Referenzen eintauchen. Oder gibt es eine andere Lösung? Die standard pickle Docu sagt mir irgendwie nicht viel
Pickle recursion limit
@Gerenuk: Du musst entweder ".__getstate__()" so implementieren, dass überflüssige Referenzen nicht enthalten sind, oder die Referenzen vor dem pickeln manuell löschen.