cPickle und Objekte von eigenen Klassen
Verfasst: Freitag 9. Januar 2009, 08:28
Hallo,
daß man Objekte von eigenen Klassen pickeln kann weiß ich und das klappt bei einer kleinen Testklasse auch wunderbar. Die Werte und Methoden sind nach dem entpickeln alle noch vorhanden und machen das was sie sollen.
Die spätere Klasse wird allerdings um einiges umfangreicher. Die Get- und Set-Methoden gibt es momentan nur zu Testzwecken; wollte nur schauen, ob das Objekt die Methoden behält.
Worum es mir eigendlich geht:
Gibt es gewisse Einschränkungen bzw. häufig auftretende Fehler beim pickeln von Objekten von eigenen Klassen?
Laut der Definition auf python.org sollte das alles so funktionieren, wie ich es brauche:
Habe zu Testzwecken die Beispielklasse in einem Modul abgespeichert und in einem Anderen geladen und es funktionierte trotzdem wunderbar.
daß man Objekte von eigenen Klassen pickeln kann weiß ich und das klappt bei einer kleinen Testklasse auch wunderbar. Die Werte und Methoden sind nach dem entpickeln alle noch vorhanden und machen das was sie sollen.
Code: Alles auswählen
class Beispiel:
def __init__(self):
self._eins = 1
self._zwei = 2
def GetEins(self):
return self._eins
def GetZwei(self):
return self._zwei
def SetEins(self, Zahl):
self._eins = Zahl
return
def SetZwei(self, Zahl):
self._zwei = Zahl
return
Worum es mir eigendlich geht:
Gibt es gewisse Einschränkungen bzw. häufig auftretende Fehler beim pickeln von Objekten von eigenen Klassen?
Laut der Definition auf python.org sollte das alles so funktionieren, wie ich es brauche:
Wie muss ich den letzten Satz verstehen?User-defined classes and their instances: marshal does not support these at all, but pickle can save and restore class instances transparently. The class definition must be importable and live in the same module as when the object was stored.
Habe zu Testzwecken die Beispielklasse in einem Modul abgespeichert und in einem Anderen geladen und es funktionierte trotzdem wunderbar.