問題タブ [dill]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
2 に答える
18021 参照

python - dill を使用してクラス定義をシリアル化する方法は?

Python pickle: deal with updated class definitionsへの回答で、dillパッケージの作成者は次のように書いています。

「わかりました、この機能を github の最新リビジョンに追加しました。思ったよりもはるかに少ないトリックで実装されました...ピクルでクラス定義をシリアル化するだけで、出来上がりです。」

それをインストールdillしていじくり回したので、実際にこの機能を でどのように使用するかは私には明らかではありませんdill。誰かが明確な例を提供できますか? クラスインスタンスをピクルし、クラス定義もシリアライズしたいと思います。

(私は python を初めて使用しますが、この機能は非常に重要だと思われます。なぜなら、オブジェクトをピクルするとき、オブジェクト (シミュレーションの結果である可能性があります) を見ることができるという保証にできるだけ近づくことができるからですクラス定義の後の未来が変更された可能性があり、簡単にアクセスできる方法ですべての変更を追跡していない.)

0 投票する
1 に答える
201 参照

python - 紹介者、紹介者、親と子

私はディルパッケージを試しています。具体的には検出モジュールであり、リファレント、リファラー、親、子の意味を直感的に理解するのに苦労しています。

参照は、一部のデータへのアクセスを可能にする値です。

そして参照対象は参照されるオブジェクトですよね?

したがって、次のコードでは:

an_instance, an_instance2, an_instance3の指示対象は でa_listあり、MyClassも の指示対象になりますがa_list、チェーンの 1 レベル上の深さですか?

したがって、参照->を意味すると、参照対象のチェーンは次のようになります。

これは次のように見られますか?

逆にa_list、リファラーは別のレベルの深さan_instanceですか?an_instance2, an_instance3MyClass

リファラーのチェーンを作成する:

そして、これも考えられるでしょうか:

参照、継承、およびコンテナーが一致する場所と一致しない場所について、誰かが明確な説明を提供できますか?

0 投票する
1 に答える
190 参照

python - リファレント、リファラーのチェーンの例

Dill パッケージでさらに作業を進めます。昨日投稿されたのは、リファレント、リファラー、継承、およびコンテナーに関する無知の例です。答えは洞察に満ちていましたが、リファラーとリファレント チェーンのいくつかのレベルの深さを示す例を思いつくのにまだ苦労しています。

昨日、私はそれがそのクラスにinstanceなるだろうと思っていました。referrerディルのドキュメントではchildrenreferrerであるため、その場合のchildgrandchilddepth=2になりますよね? そして、それは、別のものを参照する別のものを参照する(指し示す)でしょうか?objectobjectobject

少なくとも 2 の深さのリファレントリファラーのチェーンを持つオブジェクトの例は何でしょうか?

検討:

戻り値:

ここで具体的にlistオブジェクトを見ると、単一の参照先(親)great_grand_parentは文字列「ヘンリエッタ エンシェント ワン」です。

And the referrers (Children) (result of gc.get_referrers(), filtered by specified object-type) contains two objects: A list that includes the string 'Henrietta Ancient One', and the string Henrietta Ancient One. (depth=2 and depth=1 return the same result.)

How can I make an object for which Dill can return:

  1. Two distinct depths of referrers
  2. Two distinct depths of referents
0 投票する
1 に答える
2457 参照

python - パッケージ内の並列pythonおよびメソッドで「ImportError: No module named」を取得する

いくつかの分散ベンチマークを実行するために、並列 python を使用しようとしています (基本的に、中央サーバーから一連のマシンでいくつかのコードを調整して実行します)。機能を別のパッケージに移動するまで、私が持っていたコードは完全に正常に機能していました。それ以来、私は取得し続けImportError: No module named some.module.pp_testます。

私の質問は実際には 2 つあります。誰かが でこの問題に遭遇したppことがありますか?もしそうなら、どうすれば解決できますか? dill( )を使用してみimport dillましたが、役に立ちませんでした。また、追加のインフラストラクチャを必要としない、parallelpython の適切な代替品はありますか?

私が得る正確なエラーは次のとおりです。

コードは次のように構成されています。

は次のtest.pyように実装されます。

ながらpp_test.py:

0 投票する
1 に答える
1312 参照

python - Dill モジュールの BadItem の良い例

私はdetectディルの方法を探求しており、悪いアイテムの良い単純な例を探しています - ディルではピクルできないものです。

私は最初にプロセスを考えて試しました:

detectbaditemsパイプをシークできないため、ディルがシークを使用する場合、これは予想されることです。

それから私は、確かglobals()に提供できるものがあると思いました。が削除されるIOerrorまで同じものを再度提供し、その後、次のようになりました。proc

dill.detect が悪いアイテムとして返すアイテムの簡単な例は何ですか?

0 投票する
1 に答える
6121 参照

python - 依存関係を持つ Python 関数をシリアル化する

StackOverflow に関する多くの推奨事項 (dill、cloudpickle など) に従って、依存関係を持つ Python 関数をピクルする複数のアプローチを試しましたが、すべてが私が理解できない根本的な問題に遭遇しているようです。

インポートされたモジュールから関数をピクルしようとするメイン モジュールがあり、それを ssh 経由で送信してピクルを解除し、リモート マシンで実行します。

したがって、メインは次のとおりです。

リモート マシンで次の操作を行います。

pickle されて送信される関数が main 自体で定義されたトップレベルの関数である場合、すべてが機能します。それらがインポートされたモジュールにある場合、ロード機能は「module modulea not found」タイプのメッセージで失敗します。

モジュール名が関数名とともにピクルされているようです。ピクルスを「修正」して依存関係を削除する方法、またはレシーバーにダミーモジュールを作成してピクル解除の受信者にする方法がわかりません。

どんなポインタでも大歓迎です。

--プラサンナ