32.13. pickletools —ピクルス開発者向けのツール—Pythonドキュメント

提供:Dev Guides
< PythonPython/docs/2.7/library/pickletools
移動先:案内検索

32.13。 pickletools —ピクルス開発者向けのツール

バージョン2.3の新機能。


ソースコード: :source: `Lib / pickletools.py`



このモジュールには、 pickle モジュールの詳細に関連するさまざまな定数、実装に関する長いコメント、およびpickle化されたデータを分析するためのいくつかの便利な関数が含まれています。 このモジュールの内容は、 pickle および cPickle の実装に取り組んでいるPythonコア開発者に役立ちます。 pickle モジュールの通常のユーザーは、おそらく pickletools モジュールが適切であるとは思わないでしょう。

pickletools.dis(pickle, out=None, memo=None, indentlevel=4)
ピクルスのシンボリック逆アセンブリをファイルのようなオブジェクト out に出力します。デフォルトは、sys.stdoutです。 pickle は、文字列またはファイルのようなオブジェクトにすることができます。 memo は、ピクルスのメモとして使用されるPython辞書にすることができます。 同じピッカーによって作成された複数のピクルス間で分解を実行するために使用できます。 ストリーム内のMARKオペコードで示される連続するレベルは、 indentlevel スペースでインデントされます。
pickletools.genops(pickle)
ピクルス内のすべてのオペコードにイテレータを提供し、(opcode, arg, pos)トリプルのシーケンスを返します。 opcodeOpcodeInfoクラスのインスタンスです。 arg は、Pythonオブジェクトとして、オペコードの引数のデコードされた値です。 pos は、このオペコードが配置されている位置です。 pickle は、文字列またはファイルのようなオブジェクトにすることができます。
pickletools.optimize(picklestring)

未使用のPUTオペコードを削除した後、新しい同等のピクルス文字列を返します。 最適化されたピクルスはより短く、送信時間が短く、必要な保管スペースが少なく、より効率的にピクルスを外します。

バージョン2.6の新機能。