Heim >Backend-Entwicklung >Python-Tutorial >Wie speichere und lade ich mehrere Objekte in einer Python-Pickle-Datei?

Wie speichere und lade ich mehrere Objekte in einer Python-Pickle-Datei?

Mary-Kate Olsen
Mary-Kate OlsenOriginal
2024-10-30 07:08:271052Durchsuche

How to Save and Load Multiple Objects in a Python Pickle File?

Mehrere Objekte in einer Python-Pickle-Datei speichern und laden

Um mehrere Objekte in einer Pickle-Datei zu speichern, befolgen Sie diese Schritte:

<code class="python">import pickle

# Create a list of objects to be saved
objects_to_save = [object1, object2, ...]

# Open a binary file for writing
with open('my_pickle_file', 'wb') as file:

    # Pickle each object and write it to the file
    for obj in objects_to_save:
        pickle.dump(obj, file)</code>

So laden Sie mehrere Objekte aus einer Pickle-Datei:

<code class="python"># Open the binary file for reading
with open('my_pickle_file', 'rb') as file:

    # Load and print each object from the file
    while True:
        try:
            obj = pickle.load(file)
            print(obj)
        except EOFError:
            break</code>

Zusätzliche Überlegungen:

  • Verwenden von Listen: Das Speichern von Objekten in einer Liste vor dem Beizen kann Flexibilität bieten, fügt aber eine zusätzliche Abstraktionsebene hinzu.
  • Alternative Ansätze: Andere Methoden wie JSON oder NumPys savez können für bestimmte Szenarien geeignet sein.
  • Generator: Die bereitgestellte Lösung generiert Objekte nach Bedarf und vermeidet Speicherbeschränkungen.
  • Effizienz: Wenn die Datei groß ist, verwenden Sie einen Generator Das Laden von Objekten in einer Schleife ist möglicherweise effizienter als das Laden der gesamten Datei in den Speicher.

Das obige ist der detaillierte Inhalt vonWie speichere und lade ich mehrere Objekte in einer Python-Pickle-Datei?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn