Je suis en train de décaper un objet patient en utilisant:Python Pickle Cédant EOF Erreur à la lecture et ne pas lire correctement
theFile = open(str(location)+str(filename)+'.pkl','wb')
pickle.dump(self,theFile)
theFile.close()
Cela fonctionne bien et écrit avec succès dans le fichier comme vous le souhaitez. Mais! Lorsque j'essaie de charger les données du pouce, j'obtiens une erreur EOF XOR qui charge les anciennes données qui ne sont pas présentes dans le pouce. Je ne sais pas où ce vieux données vient, compte tenu de la cornichon contient toutes les données sauvegardées correctes ...
opération de chargement:
theFile = open('/media/SUPER/hr4e/thumb/patient.pkl','r+')
self = pickle.load(theFile)
theFile.close()
Un exemple serait: je change un attribut de la objet désiré et enregistrez-le. L'attribut est clairement enregistré dans le fichier pickle, mais lorsque je recharge le fichier Pickle sur un autre ordinateur, il ne lit pas le pickle et charge les anciennes données. J'ai vérifié pour voir s'il lisait le cornichon et il est ...
Y at-il des nuances subtiles sur les cornichons qui me manquent? Ou, est-ce que j'utilise juste les mauvais arguments de lecture et d'écriture pour la sauvegarde et le chargement de cornichons?
Non, cela n'a pas fonctionné. Pour une raison quelconque, il tire l'instance de patient par défaut du pickle, au lieu de l'instance enregistrée. Les données dans le fichier de pickle sont correctes ... alors où est-ce que vous obtenez ces anciennes données? Ceci est contenu en haut du fichier Pickle: (ihr4e.views. – super