Tengo un programa que genera algunas listas con las que quiero almacenar para trabajar más tarde. Por ejemplo, suponga que genera una lista de nombres de estudiantes y otra lista de puntajes de mitad de período. Puedo almacenar esta salida de las dos formas siguientes:Pickle vs salida a un archivo en python
estándar Manera de la salida del archivo:
newFile = open('trialWrite1.py','w')
newFile.write(str(firstNames))
newFile.write(str(midterm1Scores))
newFile.close()
La forma en salmuera:
newFile = open('trialWrite2.txt','w')
cPickle.dump(firstNames, newFile)
cPickle.dump(midterm1Scores, newFile)
newFile.close()
qué técnica es mejor o preferido? ¿Hay una ventaja de usar uno sobre el otro?
Gracias
'pickle' no resume exactamente las funciones y clases que pueda suponer - (http://docs.python.org/library/pickle.html#what-can-be-pickled-and-unpickled)" Nota las funciones (integradas y definidas por el usuario) se seleccionan por referencia de nombre "totalmente calificado", no por valor ... "La persistencia en este caso depende de las interfaces y las jerarquías de módulos estables, ya que el entorno de desapilado debe coincidir con el entorno de decapado. –
Gracias por la respuesta. Escribiré la representación de cadena o usaré CSV como David sugirió. – Curious2learn
@Jeremy: No me di cuenta de que a 'pickle' no le gustaban las funciones definidas por el usuario, ¡gracias! – katrielalex