2016-05-10 4 views
1

私はいくつかのクラス、関数、変数を定義し、いくつかのオブジェクトを構築するpythonスクリプトを書いてきました。さて、私はと遊ぶための環境を行くしまし保存されたすべての情報をフラッシュすることはできますか?

python3 -i /home/me/scripts/myScript.pyまたはpython -i c:\users\me\scripts

:私は、コマンドプロンプトまたはbashのターミナルから、それを開きます。しかし、いくつかの微妙な変化の後で、私は、異なる働きをする機能の1つが必要であることを発見します。

明らかに、解決策は、スクリプトファイルを変更して保存し、コンソールを端末に退出させ(または、すべてを完全に閉じて、新しいプロセスから開始して)、ファイルを再度開くことです。

しかし、いくつかのステップを保存するために、コマンドを使用して現在のセッションからすべてのデータをフラッシュする方法があるのだろうかと思います。その方法は、私が使用することができます

exec(open(r"c:\u\m\s\m.p").read())またはexec(open("/h/m/s/m.p").read())

私のコマンド履歴から、スクリプトの新しいバージョンをリロードします。

これは、フラッシングと読み取りの自動手順と組み合わせると、実際には私にとってもっと簡単になります。

EDIT私は、プログラム的である限り、長い解決策に門戸を開いています。

+2

スクリプトがインポートするモジュールであるようにリファクタリングする場合は、importlib.reload()を使用できます。https://docs.python.org/3.4/library/importlib.html#importlib.reload – JETM

答えて

0

これまでのところ、コマンドを使用してアクティブなPythonセッションをフラッシュすることはありません。しかし、私は最近、 'Anaconda'で配布されている 'Spyder' IDEを発見しました。スパイダーについて知らない人はすべきだ。最初はそれほどきれいではありませんが、パネルやメニューの位置やトグルを変更した後はとても見栄えがよくなります。しかし、それまでのところ、それは実際には上記のタスクに役立ついくつかの機能を備えています。

最初に、現在フォーカスされているスクリプトドキュメントと対話できるように、内部的に実行されているPythonセッションが1つ、複数、または複数あります。また、変数とオブジェクトを含む、現在フォーカスされているPythonセッションのメモリから要素を分析して一覧表示するための専用パネルもあります。最後に、ユーザは、これらのアイテムを選択してそれらを修正および/または除去することができる。それらのすべてを削除すると、現在のセッションが効果的に消去されます。

関連する問題