問題タブ [ipython]

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 投票する
5 に答える
18331 参照

python - PythonインタープリターをPyQTウィジェットに埋め込む方法

PythonアプリケーションからインタラクティブなPythonターミナルを起動できるようにしたいと思います。すべてではありませんが、私のプログラムの一部の変数は、インタープリターに公開する必要があります。

現在、私はサブクラス化されて変更されたものを使用し、QPlainTextEditそこにあるすべての「コマンド」をevalまたはexecにルーティングし、dict内の別の名前空間を追跡しています。ただし、よりエレガントで堅牢な方法が必要です。どのように?

これは私がやりたいことを実行する例ですが、IPythonとpyGTKを使用しています... http://ipython.scipy.org/moin/Cookbook/EmbeddingInGTK

以下は私が現在持っているものです。しかし、私がおそらくいくつかを逃したほど多くのコーナーケースがあります。それは非常に遅いです、大きな印刷ループを試してください...それはより単純でバグが発生しにくい方法になりました...私は願っています!!

def runCommand(self)私の問題を理解するための鍵となるのは機能です。理想的にはそれを改善したくはありません。むしろ、そのコンテンツをよりシンプルでスマートなものに置き換えたいと思っています。

「main」のステートメントの機能console.updateNamespace({'myVar1' : app, 'myVar2' : 1234})も重要です。

0 投票する
7 に答える
8529 参照

python - デバッグと iPython 統合を備えた Python IDE?

インタープリターとして iPython を持つ Python IDE を知っている人はいますか?

iPython とそれが提供するすべての機能を使用するのが大好きになったばかりなので、標準のインタープリターを使用することは私を夢中にさせます。正直、IDEよりも簡易テキストエディタ+ipythonでコーディングしたいのですが、マウスのクリックなどでブレークポイントを設定できるのが好きなので、両方を組み合わせたいと思っています。

そこに何かがあり、これが一般的な知識である場合は申し訳ありません。あなたが提供できる情報/ヒントは大歓迎です。ありがとう!

0 投票する
8 に答える
53595 参照

python - Python がインポートされたモジュールをキャッシュしないようにする

IPython を使用して Python で大規模なプロジェクト (複数のファイルとフォルダーに分割) を開発しているときに、インポートされたモジュールのキャッシュの問題に遭遇しました。

問題は、そのモジュールが変更された場合でも、命令import moduleがモジュールを一度しか読み取らないことです! そのため、パッケージ内の何かを変更するたびに、IPython を終了して再起動する必要があります。痛い。

一部のモジュールを適切に強制的にリロードする方法はありますか? または、Python がそれらをキャッシュしないようにする方がよいでしょうか?

いくつかのアプローチを試しましたが、どれもうまくいきません。特に、一部のモジュールや変数が不思議なことに等しくなるなど、本当に、本当に奇妙なバグに遭遇しNoneます...

私が見つけた唯一の賢明なリソースはReloading Python modules、 from pyunit ですが、チェックしていません。私はそのようなものが欲しいです。

IPython を再起動するか、何らかの方法で Python インタープリターを再起動することをお勧めします。

では、Python で開発している場合、この問題に対してどのような解決策を見つけましたか?

編集

明確にするために: 明らかに、モジュールの以前の状態に依存するいくつかの古い変数が残っている可能性があることは理解しています。それは私には問題ありません。奇妙なエラーが発生することなくモジュールを強制的にリロードすることが Python で非常に難しいのはなぜですか?

より具体的には、モジュール全体が1 つのファイルmodule.pyにある場合、次のようにするとうまくいきます。

このコードは美しく機能し、IPython を何ヶ月もやめることなく開発できます。

ただし、モジュールが複数のサブモジュールで構成されている場合は常に、地獄が解き放たれます。

モジュールが 1 つの大きなファイルにあるのか、複数のサブモジュールにあるのかによって、Python でこれほど異なるのはなぜですか? なぜそのアプローチがうまくいかないのでしょうか??

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

django - Django ipythonシェルでの%autoreloadの正しい構成は何ですか?

Ipython には autoreload と呼ばれるプラグインがあり、すべてのコマンドの後におそらくすべてのモジュールをリロードするため、ソースを変更でき、シェルを終了してすべてのコマンドを再入力する必要はありません。たとえば、http://dsnra.jpl.nasa.gov/software/Python/tips-ipython.htmlを参照してください。

ただし、Django で使用する場合、これはせいぜい不安定に思えます。たとえば、python manage.py shell は Django コンテキストの IPython シェルを提供しますが、自動リロードはまったく確実に機能しないようです。

ipy_user_conf.py ファイルに追加したものは次のとおりです。

自動リロードは限られたケースで機能しますが、おそらく 10 ~ 20% の確率で機能します。Djangoで動作するようにこれを正常に構成した人はいますか?

0 投票する
4 に答える
4215 参照

python - Python ipythonシェルを起動し、その中でいくつかのコマンドを自動的に実行し、開いたままにする方法は?

私は試した

これはコマンドを実行しますが、ipythonはすぐに終了します。

何か案は?ありがとう!

編集: 私は実際にコマンドをインタラクティブなDjangoシェルに渡す必要があります。例:

したがって、提案された-iスイッチギメルは機能していないようです(実行後もシェルは終了します)

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

python - 独自のスコープを持つIPython?

Pythonスクリプトの最後でIPythonが呼び出されたときに、スコープ変数に問題が発生しました。スクリプト自体で呼び出すすべての関数は、変数を変更できます。変数は、後で他の関数によって使用されます。ipythonで同じ関数を呼び出すと、スクリプト化された関数は変更された変数にアクセスできますが、ipythonが呼び出されたときに存在していた変数は変更されません。したがって、私の質問:グローバル変数をipythonに伝播するにはどうすればよいですか?(もちろん、A = globals()['A']のようなこともできますが、それは醜いです)

0 投票する
7 に答える
15125 参照

python - ipython履歴内を検索

ipython%hisコマンドは、ユーザーが入力した最近のコマンドを出力します。これらのコマンド内で検索することはできますか? このようなもの:

EDITコマンドを再実行する方法を探しているのではなく、履歴リストで見つけます。もちろん、コマンドを見つけた後で、コマンドをそのまままたは変更して再実行したい場合もあります。

で検索しctr-rて入力すると、「 plotplot」で始まる最新のコマンドが表示されます。それで始まるすべてのコマンドを一覧表示するわけではありません。コマンドの途中または最後で検索することもできません

解決

ここでPreludeAndFugueのソリューションを拡張すると、私が探していたもの:

ここで、if条件は正規表現で置き換えることができます

0 投票する
0 に答える
294 参照

python - IPython シェルのエラー

IPython をいじり始めたところですが、かなりクールな機能がいくつかあります。以前のシェル セッションからの入力を「記憶」する点が特に気に入っています。ただし、タブ補完に問題があります。

これが私のコンソールの例です:

aは文字列です。入力a.__class__.してからヒットTABすると、これが結果です

他の誰かがこの問題を抱えていますか? 修正はありますか?

ありがとう

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

django - iPython - Django の再ロード後に「壊れた」シェル/ターミナル

次のように、iPython シェルを Django スクリプト (開発サーバー、例: localhost の runserver) に埋め込んでいます。

これにより、目的の場所にインタラクティブなシェルが表示されます。ここで、ソース コードを変更すると、おそらく iPython シェルを正しく終了せずに Django が自動的にリロードし、端末エミュレータ (xterm、konsole) を「壊す」 - テキストが見えなくなるなど (Django 内で実行されている iPython が Ctrl で終了した場合と同じ効果) +d)。

これを引き起こしている可能性のある提案はありますか?(私はおそらく iPython を間違った方法で使用していますが、誰にもわかりません)。

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

python - pylab/matplotlib を埋め込んだ Tkinter を使用した、再生、一時停止、停止機能を備えたカラー プロット アニメーション: Figure/canvas を更新できませんか?

私は見ましたが、以前の質問が十分に具体的ではなかったので、これが繰り返されたら申し訳ありません. 目標: 実行中のアニメーションがあるように、pylab の pcolor によってプロットされたさまざまな行列データで Figure を継続的に更新する GUI。ただし、ユーザーは Tkinter ウィジェットのボタンでアニメーションを再生、一時停止、停止できる必要があります。

set_array()、draw()、および canvas.manager.after() を使用して matplotlib の回答を得る前に ...、アニメーションを開始できるようにする作業コードがありますが、停止または停止する方法がわかりませんmatplotlib の機能だけを使用する場合は一時停止するため、matplotlib の Tcl/Tk ラッパーの代わりに Tkinter straigt up を使用することにしました。誰かがアイデアを持っている場合に備えて、キックのためだけに動作するコードを次に示します。しかし、本当の質問を続けます。

ところで:pylabをインポートすると、TkAggバックエンドはmatplotlibで使用するように自動的に設定されます...と思います。または、どういうわけか自動的に TkAgg を使用します。Linux、Python 2.6.4、Ipython 0.10 を実行しています。

Daniweb IT ディスカッション コミュニティから見つけたコードを操作して、Tkinter と update_idletasks() 関数を使用して、ラベル ウィジェットの色の変化を再生、停止、停止できるようにしました。これは、Tkinter がインストールされている限り、Python だけで実行できます。matplotlib または pylab は使用されません。これは動作するコードであり、私が質問する最終的なコードのバックボーンです。

次に、matplotlib の例のembedding_in_tk.html、http://matplotlib.sourceforge.net/examples/user_interfaces/embedding_in_tk.html の助けを借りて前のコードを操作して、pcolor フィギュアに接続されたキャンバスをアニメーション化しました。ただし、キャンバスを canvas.get_tk_widget() で更新しても、その前に pcolor() を再プロットするコマンドがあるため、私が想定するトリックは実行されません。だから、再プロットするたびにキャンバスを図に再接続する必要があると思いますか? しかし、方法がわかりません。update_idletasks() を使用して正しい軌道に乗っていることを願っています???

次のコードでは、更新された図ではなく、コードが Play をループしているときに同じプロットしか表示されませんか? これが私の主な問題と質問です。

助けてくれてありがとう!