He revisado la información que proporcionan los documentos de Python , pero todavía estoy un poco confundido. ¿Alguien podría publicar un código de muestra que escribiría un nuevo archivo y luego usar pickle para volcar un diccionario en él?
python
dictionary
pickle
Chachmu
fuente
fuente

Respuestas:
Prueba esto:
fuente
pickle.HIGHEST_PROTOCOL?__slots__). No digo que siempre deba usarloHIGHEST_PROTOCOL, pero asegurarse de no usar el protocolo 0 o 1 es realmente bastante importante.pickle.HIGHEST_PROTOCOLrealmente?La ventaja de
HIGHEST_PROTOCOLes que los archivos se hacen más pequeños. Esto hace que el desempaquetado sea a veces mucho más rápido.Aviso importante : el tamaño máximo de archivo de pickle es de aproximadamente 2 GB.
Forma alternativa
Formatos alternativos
Para su aplicación, lo siguiente puede ser importante:
Ver también: Comparación de formatos de serialización de datos.
En caso de que esté buscando una manera de crear archivos de configuración, puede leer mi breve artículo Archivos de configuración en Python
fuente
fuente
En general, el decapado
dictfallará a menos que solo tenga objetos simples, como cadenas y enteros.Incluso un muy simple
dicta menudo fallará. Solo depende de los contenidos.Sin embargo, si usa un mejor serializador como
dillocloudpickle, entonces la mayoría de los diccionarios se pueden encurtir:O si desea guardar su
dicten un archivo ...El último ejemplo es idéntico a cualquiera de las otras buenas respuestas publicadas aquí (que además de descuidar la capacidad de selección de los contenidos de la
dictson buenas).fuente
normalmente es preferible usar la implementación de cPickle
fuente
Si solo desea almacenar el dict en un solo archivo, use
pickleasíSi desea guardar y restaurar múltiples diccionarios en múltiples archivos para almacenar en caché y almacenar datos más complejos, use anycache . Hace todas las otras cosas que necesitas alrededor
pickleAnycache almacena los diferentes
myfuncresultados según los argumentos de los diferentes archivoscachediry los vuelve a cargar.Consulte la documentación para más detalles.
fuente
Manera simple de volcar datos de Python (por ejemplo, diccionario) en un archivo pickle.
fuente
fuente
Encontré el encurtido confuso (posiblemente porque soy grueso). Sin embargo, descubrí que esto funciona:
Que luego puede escribir en un archivo de texto. Dejé de intentar usar pickle porque recibía errores que me decían que escribiera enteros en un archivo .dat. Pido disculpas por no usar pepinillo.
fuente
dictque contenga una mayor profundidad de objetos (que puede imprimirse solo con nombre) y / u objetos sin ninguna o una representación de cadena completa.