要するに
モジュールコードに変更を加えるたびに、Pythonインタープリターにモジュールの最新のコードバージョンをロードさせるにはどうすればよいですか?
または、少なくとも最後に変更されたバージョンを次のように入力してリロードします
>>> from myModule import *
Pythonコンソール全体を再起動して、変更を加えるたびにすべてを何度もセットアップする必要はありませんか? これは、デバッグにとって非常に不快な動作です。
--------- より長いストーリー -----------
.pyc ファイルを削除して再度インポートしようとしましたが、効果がありません。.pyc ファイルを再度作成することさえしないため、モジュールが既にロードされている場合、「インポート」コマンドは完全に無視されると思います。
これも役に立ちません:
>>> mymodule.myfunc() # the old version
>>> del myModule # unload mymodle from python conole / interpeter
... # now I removed .pyc
... # now I make some modifications in mymodule.myfunc() code
>>> mymodule.myfunc() # module is unknonwn, ... OK
>>> import myModule # try to load modified version
>>> mymodule.myfunc() # stil the old version :(((((, How it can remember?
「User Module Deleter(UMD)」 と呼ばれるこの機能があるSpyderも試しまし たhttp://pythonhosted.org/spyder/console.html#reloading-modules-the-user-module-deleter-umdまさにこれですが、そうではないようです(はい、オンになっていることを確認しました)。
多分私は何かが欠けている - 誰かが私にそれがどのように使われることになっているのか説明できますか?
これは、インポートされたモジュールが「作業ディレクトリ」ではなく PYTHONPATH にあるという事実の影響を受けていますか?