New in version 2.3.
Source code: Lib/pickletools.py
This module contains various constants relating to the intimate details of the
pickle module, some lengthy comments about the implementation, and a few useful functions for analyzing pickled data. The contents of this module are useful for Python core developers who are working on the
cPickle implementations; ordinary users of the
pickle module probably won’t find the
pickletools module relevant.
pickletools.dis(pickle, out=None, memo=None, indentlevel=4)
Outputs a symbolic disassembly of the pickle to the file-like object out, defaulting to
sys.stdout. pickle can be a string or a file-like object. memo can be a Python dictionary that will be used as the pickle’s memo; it can be used to perform disassemblies across multiple pickles created by the same pickler. Successive levels, indicated by
MARK opcodes in the stream, are indented by indentlevel spaces.
Provides an iterator over all of the opcodes in a pickle, returning a sequence of
(opcode, arg, pos) triples. opcode is an instance of an
OpcodeInfo class; arg is the decoded value, as a Python object, of the opcode’s argument; pos is the position at which this opcode is located. pickle can be a string or a file-like object.
Returns a new equivalent pickle string after eliminating unused
PUT opcodes. The optimized pickle is shorter, takes less transmission time, requires less storage space, and unpickles more efficiently.
New in version 2.6.
© 2001–2020 Python Software Foundation
Licensed under the PSF License.