0

Python コンソール (Eclipse、Pydev) で、データの読み込みを実行します。その後、オブジェクトのメソッドの一部のソース コードを変更し、データ オブジェクトに新しい機能を含めたいと考えています。データの読み込みが非常に遅いため、スクリプト全体を再起動したくありません。

ソース コードで編集した新しい実装でオブジェクト メソッドを更新する魔法の方法はありますか?

Pythonでクラスオブジェクトのメソッドのコードをリロードするには? 標準的な方法ではこれを行うことができないと言います。

では、その機能をシミュレートする方法を考えていただけますか? クラス定義をリロードしてから、それら__dict__または類似のものを調べてすべてのデータオブジェクトを再作成することはできますか? 理想的には、これは可能な限り自動で快適です。何を考慮する必要がありますか?

4

1 に答える 1

1

残念ながら、Python はそのままではオブジェクトの既存のインスタンスを置き換えることはできません。ただし、 IPythonこの機能は拡張機能として実装されています。IPython を Python コンソールとして使用することも、開発環境用にこの機能を再実装することもできます。

IPython でのモジュールの自動再ロード、および ipython docsを参照してください。

于 2012-10-25T13:26:04.817 に答える