Diccionario de Pickle en Python

Diccionario de Pickle en Python

Pickle se puede utilizar para procesar previamente los marcos de entidad de Python, que es el proceso de convertir un objeto desde la memoria en una secuencia de bytes que se puede guardar en el disco como formato binario. Este procedimiento se conoce como serialización. Para lograr esto, use el método Pickle Dump (). Cuando este registro binario se carga nuevamente en un programa de Python, se puede deserializar y convertirse de nuevo a un objeto Python utilizando el método de carga de pickle ().

Este artículo le enseña cómo almacenar los datos, más específicamente un diccionario, utilizando el módulo de encurtido de Python. Para comenzar, debemos adquirir el módulo de encurtido. Pickle Dump () acepta tres parámetros. La primera entrada especifica los datos para guardar. El segundo parámetro es el objeto de archivo que se devuelve cuando se abre un archivo en modo de escritura-binaria (WB). El argumento de valor clave es el tercer parámetro. El protocolo se define por este parámetro. Un encurtido se clasifica en dos tipos: protocolo más alto, así como un protocolo predeterminado de Pickle. Para recuperar o deserializar los datos, se utiliza el método de carga () de Pickle a través del cual se obtiene un objeto de archivo abriendo un archivo en modo de lectura-binaria (RB).

Ejemplo 1: Serialización y deserialización de los datos en un archivo de encurtido utilizando el volcado y la función de carga

En este ejemplo, aprenderemos cómo serializar y deserializar los datos como un diccionario con un código muy simple.


En el código presentado en la ilustración anterior, se importa el primer módulo de encurtido de la biblioteca de Python para que se puedan utilizar sus métodos. Luego, un diccionario de datos con 2 claves y valores se inicializa y almacena en la variable llamada "forma". En la siguiente línea, el método Pickle Dump () se utiliza para abrir un nuevo archivo con el nombre "Información.P "en modo de escritura (WB) y los datos de" forma "se almacenan en este archivo. En la siguiente línea, el método Pickle Load () se emplea para el mismo archivo en el que arrojamos los datos en modo RB. Esto devuelve nuestros datos del diccionario y se almacena en la variable llamada "A". Finalmente, este objeto devuelto se muestra en el terminal de salida utilizando el comando de impresión como se muestra en la siguiente captura de pantalla.

Podemos ver que los datos se almacenaron por primera vez en la "información.archivo p "utilizando el método de volcado. Luego, cuando empleamos el método Load () al mismo archivo, recuperamos nuestros datos.

Ejemplo 2: Uso de la función de volcado de Pickle con un protocolo adicional para serializar los datos en Python

Este es un ejemplo similar en el que usamos un protocolo adicional, el "Highest_protocol", de Pickle, que es el último protocolo. Este protocolo permite nuevas características del idioma que podemos usar e incluir optimizaciones.


En el código proporcionado en la ilustración anterior, se importa el primer módulo de encurtido. Luego, un diccionario de un elemento con una clave y un valor se inicializa y almacena en la variable "A". En la siguiente línea, un nuevo archivo que es la "información.P ”se abre en modo WB como mango. Ahora, el archivo está en el objeto llamado "Handle". Luego, la función dump () se emplea para "'manejar" con el diccionario "A" usando el "Highest_Protocol". Esto permite guardar el diccionario en "A" en la "Información.P ”archivo en el disco de la computadora. Para extraer la información del archivo, el archivo se abre primero en modo "RB". Luego, se emplea el método Pickle Load () para este archivo. Los datos devueltos se guardan en el atributo "B". Finalmente, utilizando el comando de impresión, esta información se muestra en el nodo de salida, como se ve en la siguiente captura de pantalla:

Ejemplo 3: Serialización y deserialización de una lista de datos en un archivo de encurtido utilizando el volcado y la función de carga

En este ejemplo, el módulo de encurtido se importa primero. Luego, algunos datos se insertan en un diccionario en un formato de lista y se almacenan en la variable "shape_colors". En la siguiente línea, el método Pickle Dump () se emplea directamente con estos datos. En lugar del archivo en su parámetro, la información ".El archivo P ”se abre en modo WB. Como resultado, los datos del diccionario ahora se descargan en este archivo que se almacena en el disco de la computadora. Luego, para leer los datos del archivo, el método Pickle Load () se emplea en el mismo archivo. Los datos devueltos se guardan en la variable "A". Finalmente, utilizando el comando de impresión, esta información se muestra en los terminales secundarios, como se muestra en la siguiente instantánea:


Ejemplo 4: Almacenamiento de información en un archivo de encurtido utilizando el volcado de pickle y las funciones de carga con diferentes parámetros

En el código proporcionado, se importa el primer módulo de encurtido. Luego, un diccionario de salarios se inicializa y almacena en la variable de "salarios". En la siguiente línea, un nuevo archivo "salario.P ”se abre en modo WB como mango. Ahora, el archivo está en el objeto llamado "Handle". Luego, la función Pickle Dump () se emplea para "manejar" con el diccionario "Salarios" utilizando el "Highest_Protocol". Esto permite que el diccionario en "salarios" se salva en el "salario.P ”archivo en el disco de la computadora. Ahora, para recuperar los datos del archivo, el archivo se abre primero en modo "RB". Luego, se emplea el método Pickle Load () para este archivo. La información revertida se guarda en la variable "A". En última instancia, al usar el comando de impresión, estos datos se muestran en el extremo de salida como se muestra en la siguiente instantánea:


Ejemplo 5: Serialización y deserialización de los datos en múltiples dimensiones en un archivo de encurtido utilizando el volcado de encurtido y la función de carga

La creación de Dataframes (tablas multidimensionales) en Python es útil para probar nuevos métodos y funciones que se encuentran en el módulo de Panda de Python. Existen varios métodos para construir un marco de datos desde cero, pero uno de los más simples es utilizar un diccionario básico.


En el código proporcionado en la ilustración anterior, se importan los primeros módulos de Pickle y Pandas. Luego, se crea una tabla multidimensional utilizando el PD.Método DataFrame (). El siguiente atributo de la estrategia es una lista de cuatro listas. Cada lista corresponde a una fila de la tabla. El segundo parámetro son las "columnas" que define el encabezado de cada columna de la tabla. Este marco de datos se almacena en "pre". Entonces, un nuevo archivo que es "Asistencia.P ”se abre en modo WB y el método de volcado de pickle () se emplea en este archivo con DataFrame. Ahora, nuestros datos especificados se almacenan en la "Asistencia.P ”archivo en el disco duro de la computadora.


Para recuperar los datos del archivo, abrimos el archivo en modo RB que permite la lectura del archivo. Luego, el método de carga de pickle () se emplea en el "Asistencia.archivo p ". Finalmente, los datos en el archivo se muestran en el terminal de salida. Como podemos ver, todo el marco de datos se muestra en el terminal de salida que se almacena en el "Asistencia.archivo p ".

Conclusión

Tome precauciones adicionales cuando trabaje con archivos de encurtidos. El módulo de pepinillo carece de seguridad. Solo desactivar los datos en los que confía. Es posible crear datos de encurtidos maliciosos que puedan ejecutar código arbitrario durante el proceso de desactivación. Sin embargo, es un método efectivo para almacenar diccionarios, listas y tablas en Python. El decapado es especialmente beneficioso en el análisis de datos cuando está ejecutando operaciones de rutina en los datos, como el preprocesamiento. Espero que este artículo te haya ayudado a aprender sobre los diferentes métodos del módulo de encurtido de Python y cómo usarlo con diccionarios.