Filadelfo Fiamma wrote: > Buongiorno a tutti, > > Avrei un quesito circa l'utilizzo del modulo pickle. > L'obiettivo della mia applicazione è gestire un mini-database di file > pickle, una volta che sono stati acquisiti i dati da altre fonti. > Studiando il modulo ho individuato due metodi: dump() e load() che mi > consentono di salvare su file e di leggere da file gli oggetti in > questione. Molto spesso capita di dover salvare un oggetto una seconda > volta dopo che è stato aggiornato, e tale scopo rieffettuo il dump(). > Mi chiedo se invece sia possibile aggiornare il file pickle, andando > dunque a modificare e/o aggiungere solo delle specifiche parti > piuttosto che effettuare il dump dell'intero oggetto? > > Grazie mille > > Buona giornata > > FF
Ti consiglio di guardare lo ZODB. Fa sicuramente molte cose in più rispetto a quello che ti serve ma puoi prendere spunto da lì per la gestione dei 'salvataggi'. Nello specifico lo ZODB usa pickle per la serializzazione, nel caso di un oggetto composito esegue la serializzazione solo delle parti che sono cambiate; le classi devono derivare dalla classe Persistent per fare in modo che lo ZODB capisca cosa è cambiato e ogni oggetto cambiato viene serializzato separatamente, ma lo ZODB gestisce anche i riferimenti tra gli oggetti in modo che siano sempre validi... meglio se guardi il codice :) -- Riccardo Lemmi _______________________________________________ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python