Pickle en Python

Foto de chuttersnap en Unsplash

Introducción

Cuando se ejecuta un programa, todos los objetos de Python se almacenan temporalmente en la memoria del sistema y, una vez que el programa finaliza, el sistema operativo recuperará toda la memoria ocupada. Aquí viene una pregunta: ¿Cómo podemos almacenar objetos Python en discos o enviarlos a través de una red? Estos son escenarios donde se necesita el decapado.

El decapado se refiere al proceso de convertir un objeto Python en bytes que se pueden almacenar convenientemente en discos o enviar a través de una red. Se le llama decapado en Python, y también se le llama serialización, clasificación, aplanamiento, etc. en otros lenguajes. Todas estas palabras significan el mismo proceso e intercambiables.

Usando el módulo Pickle de Python

Python tiene un módulo incorporado llamado pickleque hace que el proceso de decapado sea muy simple y conveniente.

Hay dos tipos de métodos de uso común en este módulo: dumpso dump, y loadso load.

Decapado por vertederos o vertederos

El dumpsmétodo se utiliza para convertir un objeto en bytes:

Después de la conversión de un objeto Python a bytes, solo necesitamos guardar los bytes en un archivo en discos.

Si aún no está familiarizado con el manejo de archivos en Python, no se preocupe, hay un gran tutorial que habla de eso:

Otro método llamado dump(sin "s" final) tiene un segundo parámetro que recibe un nombre de archivo. Por lo tanto, podemos usar dumppara convertir un objeto a bytes y guardarlo en un archivo a la vez:

Despegue por cargas o por carga

Unpickling, que es la operación opuesta al decapado, se refiere al proceso de convertir bytes en objetos Python. Podemos utilizar loado loadsmétodo para este propósito:

Use JSON para reemplazar Pickle

Hay un problema con el picklemódulo: solo se puede usar en Python. Otros lenguajes no pueden entender y convertir los bytes generados por el picklemódulo. Si queremos transferir un objeto entre diferentes lenguajes de programación, debemos serializar el objeto en un formato estándar e independiente del lenguaje. Una forma común es serializarlo en JSON. Los objetos JSON parecen cadenas que pueden leerse directamente en un sitio web y almacenarse fácilmente en discos o transmitirse a través de la red. Por ejemplo, en el desarrollo web de Python, JSON se usa comúnmente para transmitir objetos entre Python en el back-end y JavaScript en el front-end.

Python tiene un módulo incorporado llamado jsony sus operaciones son similares al picklemódulo:

Conclusión

La selección es el proceso de convertir objetos de Python en bytes para que sea conveniente almacenarlos en discos o transmitirlos a través de la red. Si solo usamos Python en un proyecto, el picklemódulo es útil. Si necesitamos transmitir datos entre diferentes idiomas, JSON es una opción común.

Gracias por leer, hay más tutoriales de Python geniales aquí:

El tutorial definitivo de Python (sigue actualizándose)

Suggested posts

Búsqueda de información sobre nombres de dominio

Un extracto de Small, Sharp Software Tools de Brian P. Hogan

Búsqueda de información sobre nombres de dominio

Cuando realiza una solicitud a facebook.com, su computadora busca el nombre de dominio para traducir ese nombre de dominio en una dirección IP para que su computadora pueda hacer esa conexión.

Cómo ejecutar los complementos de ChatGPT de forma gratuita usando Langchain

Cómo ejecutar los complementos de ChatGPT de forma gratuita usando Langchain

Debe haber oído hablar de todos los complementos nuevos y potentes de ChatGPT, como el navegador, el intérprete de código, etc. Pero hay un problema, el acceso a los complementos está limitado a una lista de espera y, por lo tanto, muchos no tienen acceso a ellos.

Related posts

Twitter de televisión en red

Twitter de televisión en red

Lo que es viejo ahora es nuevo otra vez y lo que solía ser algo reluciente ahora se siente aburrido. No me refiero a que los jeans JNCO regresen entre los chicos geniales del centro de la ciudad junto con otras modas de fines de la década de 1990.

La revolución del lugar de trabajo: los mejores expertos hablan sobre el trabajo híbrido y remoto

La revolución del lugar de trabajo: los mejores expertos hablan sobre el trabajo híbrido y remoto

En el panorama empresarial en rápida evolución actual, el concepto de trabajo híbrido y remoto ha ganado un impulso sin precedentes. A medida que las empresas continúan adaptándose a las necesidades y expectativas cambiantes de sus empleados, expertos de varios campos se han reunido para analizar los beneficios, los desafíos y el futuro de esta forma transformadora de trabajar.

Lo que puede hacer en su temporada de espera (esperando conseguir su primer trabajo en tecnología)

Lo que puede hacer en su temporada de espera (esperando conseguir su primer trabajo en tecnología)

Cambiar a una nueva carrera puede ser extremadamente desafiante si trata de hacerlo solo. Es importante encontrar socios responsables que estén en el mismo nivel de aprendizaje que usted, que compartan objetivos, tenacidad e impulso similares.

Rastree a cualquiera con solo un número de teléfono | Investigación OSINT

Rastree a cualquiera con solo un número de teléfono | Investigación OSINT

Puede ser un investigador de OSINT, un jugador de CTF o simplemente alguien que recibe llamadas no deseadas. Alguien que está tratando de verificar el número que viste en un anuncio.