Pickle

Überblick

Unterstützung von Datenstrukturen

+-

Pickle wird zum Speichern von Python-Objektstrukturen wie list oder dict in einem Byte-Stream verwendet. Im Gegensatz zu marshal werden bereits serialisierte Objekte getrackt, sodass spätere Verweise nicht erneut serialisiertt werden. Auch rekursive Objekte sind möglich.

Standardisierung

++

Pickle ist definiert in den Python Enhancement Proposals 307, 3154 und 574.

Schema IDL

--

Nein

Sprachunterstützung

--

Python-spezifisch

Menschliche Lesbarkeit

+-

Pickle ist ein binäres Serialisierungsformat, das jedoch einfach mit Python gelesen werden kann.

Geschwindigkeit

+-

Das Pickle-Format kann von Python meist schnell serialisiert und deserialisiert werden; siehe jedoch Don’t pickle your data.

Dateigröße

++

Kompaktes Binärformat, das jedoch noch weiter komprimiert werden kann, s. Data Compression and Archiving.

Siehe auch

pickle – Python object serialization

Dokumentation des pickle-Moduls

shelve – Python object persistence

Indizierte Datenbanken von pickle-Objekten

Uwe Korn: The implications of pickling ML models

Alternativen zu pickle für ML-Modelle

Ned Batchelder: Pickle’s nine flaws

Nachteile von pickle und Alternativen