Lire un fichier Pickle en utilisant Python

Vaibhav Vaibhav 30 janvier 2023
  1. Lire un fichier Pickle à l’aide du module pickle en Python
  2. Lire un fichier Pickle à l’aide du module pandas en Python
Lire un fichier Pickle en utilisant Python

En Python, le décapage fait référence à la conversion d’un objet Python (listes, dictionnaires, etc.) en un flux binaire, et le décapage fait référence à la conversion d’un flux binaire de données en un objet Python.

Le flux de données binaire converti contient toutes les informations nécessaires pour reconstruire l’objet d’origine. Malheureusement, les fichiers pickle sont généralement considérés comme dangereux.

Les fichiers Pickle sont utilisés pour enregistrer l’état d’un programme (valeurs des variables, des objets et leurs états, etc.), stocker des objets Python dans des bases de données sous la forme de chaînes binaires sérialisées, envoyer des données via TCP ou Transmission Control Protocol, etc.

Lors de la formation de modèles d’apprentissage automatique, les fichiers pickle sont utilisés pour stocker les pondérations des modèles, et parfois, les données de formation chargées ou les données de formation formatées sont stockées sur le disque sous la forme de fichiers pickle.

Dans cet article, nous allons comprendre comment lire ces fichiers pickle en utilisant Python. Nous allons discuter de deux de ces façons.

Lire un fichier Pickle à l’aide du module pickle en Python

Python a un module intégré, pickle, qui contient des utilitaires pour la sérialisation et la désérialisation des données à l’aide de Python. Ces données peuvent être stockées dans des fichiers pickle.

On peut utiliser le module pickle pour lire un fichier pickle en Python. Reportez-vous au code Python suivant pour la même chose.

objects = []
file_name = "/path/to/the/pickle/file"

with (open(file_name, "rb")) as f:
    while True:
        try:
            objects.append(pickle.load(f))
        except EOFError:
            break

Dans le code ci-dessus, la variable objects contiendra toutes les données du fichier pickle.

Le code boucle sur le fichier pour le lire jusqu’à ce qu’une exception EOFError soit trouvée. La même chose est que les données sont stockées dans des objets à l’intérieur d’un fichier pickle.

La fonction load() du module pickle ne lira qu’un seul objet. Après avoir lu un objet, le pointeur de fichier pointe vers le début de l’objet suivant dans le fichier pickle.

Reportez-vous à la documentation liée ici pour en savoir plus.

Lire un fichier Pickle à l’aide du module pandas en Python

On peut utiliser la librairie pandas pour lire un fichier pickle en Python.

Le module pandas a une méthode read_pickle() qui peut être utilisée pour lire un fichier pickle.

Cette méthode accepte un argument filepath_or_buffer : le chemin du fichier, l’URL ou le tampon à partir duquel le fichier pickle sera chargé. Cette fonction renverra un objet non décapé du fichier.

Voyons maintenant comment utiliser cette méthode en pratique. Reportez-vous au code Python suivant pour la même chose.

import pandas as pd

file_name = "/path/to/the/pickle/file"
objects = pd.read_pickle(file_name)

Pour en savoir plus sur la méthode read_pickle(), reportez-vous à la documentation officielle ici.

Vaibhav Vaibhav avatar Vaibhav Vaibhav avatar

Vaibhav is an artificial intelligence and cloud computing stan. He likes to build end-to-end full-stack web and mobile applications. Besides computer science and technology, he loves playing cricket and badminton, going on bike rides, and doodling.