2010-02-02 14 views
11

que utilizo cPickle a Pickle una lista de números enteros, usando HIGHEST_PROTOCOL,pitón resultados 2.6 cPickle.load en EOFError

cPickle.dump(l, f, HIGHEST_PROTOCOL) 

Cuando intento unpickle esta usando el siguiente código, consigo un EOFError. Intenté "buscar" compensar 0 antes de desatornillar, pero el error persiste.

l = cPickle.load(f) 

¿Alguna idea?

+0

Acabo de notar que no estoy escribiendo a/lectura desde el archivo en modo binario. Espero que eso solucione este problema. – fsm

+0

Obviamente, te proyecté ese pensamiento mientras escribía mi respuesta: p –

+0

Sí, eso es completamente posible :-) – fsm

Respuesta

19

Si está en Windows, asegúrese de que

open(filename, 'wb') # for writing 
open(filename, 'rb') # for reading 
+0

gracias! eso solo se me ocurrió :-) – fsm

+0

¡Gracias, 7 años después, esto sigue siendo útil !. me ayudó mucho;) – Breeze

+0

De acuerdo. Solo me salvó también. – jbee