Re: [Python] Info su pickle.

2014-09-03 Per discussione Gabriele Battaglia


- Original Message - 
From: "Dario Bertini" 



per la prima domanda:

se non fai un "from modulo import variabile", devi specificare il modulo

pickle.HIGHEST_PROTOCOL

GB: ... Sì, hai raione naturalmente, devo aver preso tutto il poco sole 
che ha brillato quest'estate, :).


seconda domanda:

non lo so, ma è in base a come apri/riusi il file è possibile che la
posizione sia in fondo, che sia aperto in modalità testo e non
bytes... gli errori possono essere molteplici

GB: centrato anche qui, il mode era 'w' invece che 'wb'.

Grazie mille.
GB. 


___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] Info su pickle.

2014-09-03 Per discussione Dario Bertini
per la prima domanda:

se non fai un "from modulo import variabile", devi specificare il modulo

pickle.HIGHEST_PROTOCOL

seconda domanda:

non lo so, ma è in base a come apri/riusi il file è possibile che la
posizione sia in fondo, che sia aperto in modalità testo e non
bytes... gli errori possono essere molteplici

bisognerebbe vedere il codice completo che usi

qui c'è un esempio funzionante:

import pickle
from tempfile import TemporaryFile

with TemporaryFile() as f:
a = {1,2}
pickle.dump(a, f)
f.seek(0)
assert a == pickle.load(f)
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


Re: [Python] Info su pickle.

2014-09-03 Per discussione Daniele Varrazzo

On 2014-09-03 14:15, Gabriele Battaglia wrote:

Ciao a tutti e ben rientrati dalle ferie.


import pickle

HIGHEST_PROTOCOL

Traceback not defined.


>>> import pickle
>>> pickle.HIGHEST_PROTOCOL
2

forse?

-- Daniele
___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python


[Python] Info su pickle.

2014-09-03 Per discussione Gabriele Battaglia

Ciao a tutti e ben rientrati dalle ferie.


import pickle

HIGHEST_PROTOCOL

Traceback not defined.

Nell'help si dice che HIGHEST_PROTOCOL è una costante che indica il più 
recente protocollo di compressione, perchè non è definita?


Premetto che faccio queste prove con Python 2.7.7, sotto Windows.

Provo allora ad usare un valore negativo, che dovrebbe avere lo stesso effetto 
di ...[protocol=HIGHEST_PROTOCOL]:



pickle.dump(myvar, myfile, -1)


La variabile viene serializzata e salvata ma, quando tento di caricarla col 
metodo load:



myvar = pickle.load(myfile)


Ottengo un errore interno al modulo pickle:

...
TypeError: Ord()Expected a character, but string of lenght 0 found.

Da cosa può dipendere?

Se non passo protocol a dump invece, tutto funziona.

Grazie.

GB. 


___
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python