2011-01-18 58 views
3

私はインタラクティブな開発が大好きなので、私は本当にPythonが大好きです。しかし、Pythonが短く見える領域が1つあります。これは、変更されたファイルを自動的に再読み込みする領域にあります。基本的に、私がしたいのは、ディスク上のPythonファイルを修正し、実行中のPythonインスタンスが変更されたモジュールを自動的にリロードしてREPLの変更にすぐにアクセスできるようにすることです。基本的には、何らかの監視コマンドが必要です。Pythonシェルは自動的に変更をロードします

私はそれが最高のものだと思うので、私はbpythonシェルを使用することがありますが、この機能は私にはとても重要なので、他のPythonシェルに切り替えることができます。出来ますか?

+0

このようなもの:http://stackoverflow.com/questions/4514095/dynamically-loading-python-source-code? – Marii

答えて

0

のようなものtail -f in python + reload()

私は本当に彼らがタグをOSとPythonのバージョンを必須にするべきだと思います。

+1

'reload'は実際の機能よりコーナーケースが多いです。可能な限り避けてください。 – habnabit

+0

それで私の答えは役に立たないのですか?場合によっては、モジュールのリロードを避けることはできません。 – orlp

+0

@nightcracker、例を挙げることはできますか?基本的に私が誰かがそれを示唆するたびに、ユニットテストやPythonインタプリタの再起動のどちらかで問題が解決したはずです。 – habnabit

0

コードをテストする場合は、コードを繰り返しテストするのではなく、自動化された単体テストを実行する必要があります。コードをすばやくテストし、貴重で貴重な開発時間を無駄にすることはありません。

個人的には、私はランナーとしてpy.testunittestを使用します。

+0

ウェブ開発をしている場合、これは当てはまりません。たとえば、サーバーの自動リロードなど。 – Marii

+0

@cldy、私が見てきた半ばのWeb開発フレームワークでは、統合テストを自動化する方法があり、単体テストを書くことができなくなることはありません。なぜサーバーが必要なのですか? – habnabit

+0

私はあなたが何かを書いてあなたのブラウザでそれを見たいと思っています。再起動するのではなく、自動的にロードする方がはるかに簡単です。 – Marii

関連する問題