11 pickletools -- pickle 開発者のためのツール群

バージョン 2.3 で 新たに追加 された仕様です。

このモジュールには、pickle モジュールの詳細に関わる 様々な定数や実装に関する長大なコメント、そして pickle 化されたデータ を解析する上で有用な関数をいくつか定義しています。このモジュールの内容は pickle および cPickle の実装に関わっている Python core 開発者にとって有用なものです; 普通の pickle 利用者に とっては、pickletools モジュールはおそらく関係ないものでしょう。

dis( pickle[, out=None, memo=None, indentlevel=4])
pickle をシンボル分解 (symbolic disassembly) した内容を ファイル類似オブジェクトout (デフォルトではsys.stdout) に出力します。pickle は文字列にもファイル類似オブジェクトにも できます。memo は Python 辞書型で、 pickle のメモに使われます。 同じ pickler の生成した複数の pickle 間にわたってシンボル分解を行う 場合に使われます。ストリーム中でMARK opcode で表される 継続レベル (successive level) はindentlevel に指定したスペース 分インデントされます。

genops( pickle)
pickle 内の全ての opcode を取り出すイテレータを返します。このイテレータは (opcode, arg, pos) の三つ組みからなる配列を 返します。 opcode は OpcodeInfo クラスのインスタンスのクラスです。 arg は opcode の引数としてデコードされた Python オブジェクトの 値です。pos は opcode の場所を表す値です。 pickle は文字列でもファイル類似オブジェクトでもかまいません。
ご意見やご指摘をお寄せになりたい方は、 このドキュメントについて... をご覧ください。