memoranda2016-02-01Pythonのpickleでserializeできない問題の回避策(dill)読み込んだデータをシリアライズしておきたい場合、pickleを使えば任意のクラスのオブジェクトを扱える。ファイルを開いて、dumpで書き出し、loadで読み出しを行えば良い。ある構造を持つクラスのオブジェクトをpickleでシリアライズしようとすると、以下のようにエラーとなる。failedクラスの内容は以下の通りで、defaultdictをネストしているので、lambdaを与えている。pickle.load(f)print(newklass.prop["x"]["y"])以下をみると、同じようなエラーがlambdaを使った際に発生するようだ。あと5分だけそこで、defaultdictの引数にlambdaではなく関数を渡すようにするとうまくいく。一応、defaultdictのネストにも対応できる。賢いやり方があるかもしれない。dillコメントで教えていただきましたdillを使えば良いことが分かりました。pickle必要無さそうですね。dillはpipでインストールします。こちらの記事のオマージュです。仮想マシンのスタックとネットワークI/Oについて月別アーカイブ参加グループインターネットテクノロジープログラミングはてなブログをはじめよう!nishidyさんは、はてなブログを使っています。ブログを報告するスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。