pickletools
— 用于腌制开发者的工具
¶
2.3 版新增。
源代码: Lib/pickletools.py
此模块包含的各种常量细节密切相关
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
pickle
and
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
,默认为
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.
pickletools.
genops
(
pickle
)
¶
提供
iterator
over all of the opcodes in a pickle, returning a sequence of
(opcode, arg, pos)
3 元组。
opcode
是实例化的
OpcodeInfo
类;
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.
pickletools.
optimize
(
picklestring
)
¶
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.
2.6 版新增。