Python dispone dei moduli pickle
e cPickle
per la serializzazione.Devo usare Pickle o cPickle?
cPickle
ha un ovvio vantaggio rispetto a pickle
: velocità. Che vantaggio ha, se esiste, lo oltre cPickle
?
Python dispone dei moduli pickle
e cPickle
per la serializzazione.Devo usare Pickle o cPickle?
cPickle
ha un ovvio vantaggio rispetto a pickle
: velocità. Che vantaggio ha, se esiste, lo oltre cPickle
?
Il modulo pickle implementa un algoritmo per trasformare un arbitrario pitone oggetto in una serie di byte. Questo processo è anche chiamato serializzare "l'oggetto". Il flusso di byte che rappresenta l'oggetto può quindi essere trasmesso o memorizzato e successivamente ricostruito per creare un nuovo oggetto con le stesse caratteristiche.
Il modulo cPickle implementa lo stesso algoritmo, in C invece di Python. È molto più veloce dell'implementazione Python, ma non consente all'utente di sottoclasse da Pickle. Se la sottoclasse non è importante per il tuo uso, probabilmente vorrai usare cPickle.
Source di informazioni di cui sopra.
ho trovato questo riguardo salamoia e cPickle:
"Il modulo pickle implementa un algoritmo per trasformare un oggetto Python arbitrario in una serie di byte ....
Il modulo cPickle implementa lo stesso algoritmo, in C invece di Python. E 'molte volte più veloce rispetto alla implementazione di Python, ma non consente all'utente di sottoclasse da Pickle.
Se sottoclasse non è importante per il vostro uso, probabilmente w per usare cPickle. "
Fonte: https://pymotw.com/2/pickle/
FYI: Ho downvoted tua domanda, perché non ha preso il tempo di digitare "salamoia vs cPickle" in un motore di ricerca. – timgeb
È interessante notare che quando è stata posta questa domanda, ha ricevuto 3 downvotes ed è stata chiusa entro 4 ore. Da allora, ha ricevuto 7 upvotes ed è stato visto più di 2.500 volte ... – user200783
@timgeb Questa domanda è ora il secondo risultato di Google (per me) per "pickle vs cpickle" – BallpointBen