私はC++(Qt)でIPythonのフロントエンドに取り組んでいます。IPythonカーネルを起動し、ZMQソケットを使って接続するには?
私は自分のアプリケーションにPythonを埋め込み、プロットを取得してGUIで表示することができました。今、私はIPythonカーネルを起動し、ZMQソケットを通してそれに接続したいと思っています。
IPythonカーネルとの通信プロトコルにはdescriptionが見つかりました。ただし、どのポートに接続するかは、どこでもとは言いません。それで、通信プロトコルを持っているのはいいと思いますが、使用するポートがわからないと全く役に立たないのです。
ドキュメントには「カーネル仕様」が記載されており、jupyter kernelspec list
コマンドを使用するよう指示されています。これは実際に私には2つのファイルだけを含む1つのディレクトリを示しています:logo-32x32.pngとlogo-64x64.png ...
私のIPythonカーネルと通信するために、
私はCから次のPythonコードを実行することによって、私のIPythonカーネルを起動++のQtアプリ:
import IPython
IPython.start_kernel(argv=[])
[ipy_repl.py'](https:// gist [Sublime Text](https://sublimetext.com)プログラミングエディタ用の[SublimeREPL](https://packagecontrol.io/packages/SublimeREPL)プラグインの[.github.com/MattDMo/6cb1dfbe8a124e1ca5af] Sublime固有のAPIはありません。基本的には、4.1.1までのIPythonと4.1.0までのjupyter_consoleで動作します(IPython 4以降のバージョンでは動作しません)。 IPython/Jupyterカーネルのオートコンプリート機能を利用します。 – MattDMo
'start_kernel'は、現在のプロセスでカーネルを起動します。あなたが望むように聞こえるのは、アプリケーションプロセスから接続する別のプロセスのカーネルです。そのためには、[jupyter_client](http://jupyter-client.readthedocs.io/en/latest/api/manager.html)モジュールを使用します。あなたはSpyderのようなアプリケーションを見て、彼らが何をしているか見ることができます。 –