Los pickles de Python son la mar de útiles ya que representan un objeto Python como una cadena de bytes. Se pueden hacer multitud de cosas con dichos bytes, como por ejemplo, almacenarlos en un archivo o base de datos, o transferirlos a través de una red.
La representación “pickle” de un objeto Python, se denomina archivo pickle. El archivo pickle, por tanto, se puede utilizar para distintos propósitos, como el almacenamiento de resultados para que sea utilizado por otro programa Python, o bien para crear copias de seguridad. Para obtener el objeto original de Python, simplemente tienes que “unpicklear” esa cadena de bytes.
Los pickles de Python
Los pickles de Python son la mar de útiles ya que representan un objeto Python como una cadena de bytes. Se pueden hacer multitud de cosas con dichos bytes, como por ejemplo, almacenarlos en un archivo o base de datos, o transferirlos a través de una red.
La representación “pickle” de un objeto Python, se denomina archivo pickle. El archivo pickle, por tanto, se puede utilizar para distintos propósitos, como el almacenamiento de resultados para que sea utilizado por otro programa Python, o bien para crear copias de seguridad. Para obtener el objeto original de Python, simplemente tienes que “unpicklear” esa cadena de bytes.
Instalación
El módulo Pickle viene ya incluido en la instalación de Python. Para obtener una lista de los módulos instalados, puede escribir el siguiente comando en el prompt de Python: help(‘modules’).
Así que todo lo que tienes que hacer para trabajar con el módulo Pickle es: import pickle!
Crear un archivo Pickle
A partir de esta sección, vamos a echar un vistazo a algunos ejemplos de pickling para entender mejor el concepto. Empecemos por crear un archivo pickle de un objeto. El objeto que utilizaremos será la lista de tareas que hicimos en el tutorial de listas de Python.
todo = ['write blog post', 'reply to email', 'read in a book']
Con el fin de convertir a pickle nuestro objeto de lista (todo), podemos hacer lo siguiente:
import pickle todo = ['write blog post', 'reply to email', 'read in a book'] pickle_file = file('todo.pickle', 'w') pickle.dump(todo, pickle_file)
Ten en cuenta que hemos hecho un import pickle para poder utilizar el módulo Pickle. También hemos creado un archivo pickle para almacenar el objeto que vamos a hacer pickle, es decir todo.pickle. La función dump graba una representación pickled de “todo” en el objeto de fichero pickle_file. En otras palabras, la función dump tiene dos argumentos: el objeto pickle, que es la lista de tareas y un objeto file donde queremos escribir el pickle, que es todo.pickle.
Unpickling (restaurar) los datos pickled
Digamos que nos gustaría restaurar los datos pickled (en nuestro caso, la lista de tareas). Para ello, podemos utilizar el siguiente script:
import pickle pickle_file = file('todo.pickle') todo = pickle.load(pickle_file) print(todo)
El anterior script listará los elementos de “todo”.
['write blog post', 'reply to email', 'read in a book']
Te esperamos en los próximos artículos en donde hablaremos mas acerca de estos temas que hoy en día son de importancia e interés en el mundo de la tecnología.