Maison > développement back-end > Tutoriel Python > Comment puis-je enregistrer et récupérer efficacement des objets Python à l'aide de Pickle ?

Comment puis-je enregistrer et récupérer efficacement des objets Python à l'aide de Pickle ?

Linda Hamilton
Libérer: 2024-12-09 09:03:06
original
895 Les gens l'ont consulté

How Can I Efficiently Save and Retrieve Python Objects Using Pickle?

Sauvegarde d'objets : implémentation de la persistance des données

Dans la programmation orientée objet, le stockage et la récupération des états des objets sont cruciaux pour la persistance des données.

Pour enregistrer un objet, vous pouvez utiliser le module Python pickle. Explorons comment :

  1. Emballage d'objets pour Pickle :
    À l'aide du module pickle, vous pouvez sérialiser des objets en les "enveloppant" dans un flux binaire. Vous pouvez y parvenir en ouvrant un fichier en mode écriture binaire (« wb ») et en utilisant la fonction pickle.dump() pour stocker votre objet :

    import pickle
    
    # Example object
    company1 = Company('banana', 40)
    
    with open('company_data.pkl', 'wb') as outp:
     pickle.dump(company1, outp, pickle.HIGHEST_PROTOCOL)
    Copier après la connexion
  2. Exploiter cPickle ou _pickle (Python 3) :
    Pour des performances accrues, pensez à utiliser cPickle (ou _pickle dans Python 3) car il est considérablement plus rapide que le module cornichon. Remplacez simplement l'instruction d'importation :

    import cPickle as pickle
    Copier après la connexion
  3. Optimisation des versions de protocole :
    Pickle utilise différents protocoles pour écrire des données dans différents formats. Le protocole 0 est lisible par l'homme, tandis que les versions >0 sont binaires. La spécification de la version la plus élevée (-1) garantit l'utilisation du dernier protocole pris en charge pour votre version de Python :

    pickle.dump(obj, outp, -1)
    Copier après la connexion
  4. Enregistrement de plusieurs objets :
    Vous peut stocker plusieurs objets dans un seul fichier pickle en utilisant une liste, un tuple ou dict :

    tech_companies = [
     Company('Apple', 114.18),
     Company('Google', 908.60),
     Company('Microsoft', 69.18)
    ]
    
    save_object(tech_companies, 'tech_companies.pkl')
    Copier après la connexion
  5. Décapage des objets stockés :
    Pour restaurer les objets enregistrés, ouvrez simplement le fichier pickle en mode lecture binaire ("rb") et utilisez pickle.load() pour récupérer les données :

    with open('company_data.pkl', 'rb') as inp:
     company1 = pickle.load(inp)
    Copier après la connexion

En conclusion, en utilisant le Le module pickle fournit une méthode efficace pour enregistrer et restaurer des objets, vous permettant de créer des structures de données persistantes pour vos applications.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal