問題タブ [python-embedding]
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.
c++ - Python 3.3 の埋め込み: _PyParser_Grammar にアクセスするにはどうすればよいですか?
Python/C API の PyRun_InteractiveLoop() 関数をエミュレートしようとしていますが、雇用主が使用している別の入力システムからのものです。Python FAQ ( http://docs.python.org/3/faq/extending.html#how-do-i-tell-incomplete-input-from-invalid-input ) には次のコードがあり、指定された文字配列は完全な Python ブロックです。
これにより、_PyParser_Grammar に対して宣言されていない変数エラーが発生します。Python ソース コードを検索したところ、_PyParser_Grammar を宣言したヘッダーは見つかりませんでした。さらに調べてみると、いくつかの関数、特に metagrammar.c で定義されている meta_grammar() と Py_meta_grammar() によって参照されていることがわかりました。
meta_grammar() は pgen.h で定義されていますが、-lpython3.3m でコンパイル (私のテスト コードでは g++) しても、未定義のシンボル エラーが発生します。簡単な nm により、meta_grammar() は libpython3.3m.so では可視シンボルではないことが明らかになりましたが、Py_meta_grammar() は可視シンボルです。しかし、Python のソース コードを検索すると、Py_meta_grammar() を宣言するヘッダーは見つかりませんでした。
何か不足していますか?これらのシンボルはどこで宣言/定義されていますか?
c++ - Microsoft Visual Studios 2012 で「python33.lib」を開けない
Python を組み込む予定の C++ プログラムに、MicroSoft Visual Studios 2012 の Boost ライブラリを使用しています。問題は、ソリューション [F7] をビルドしようとしたときです。私はこれを取得します::
Error 1 error LNK1104: cannot open file 'python33.lib' C:\Users\usr\Documents\Visual Studio 2012\Projects\ConsoleApplication1\ConsoleApplication1\LINK
問題は、これが何を意味するのか、またはそれを修正する方法の手がかりがわからないことです。もともと C:\ にあったので、Python フォルダーをデスクトップに移動しようとしましたが、おそらくアクセス許可エラーだと思いましたが、何もしませんでした。
これは、プロジェクトの準備のために読んでいたチュートリアルのコードです::
--Visual Studios 2012 --Windows 7 x64 --Python 3.3.2 --Boost ライブラリ --Python Embedded C++ プログラム
--チュートリアル ページへのリンク:: http://wiki.python.org/moin/boost.python/EmbeddingPython
python - Qt Designer で作成した MatplotlibWidget を Python コードで操作する
Qt Designer を介して作成した MatplotlibWidget とのやり取りで問題に直面しています。軸のラベルを変更したり、スケールしたり、タイトルを付けたりすることができません。私は何か間違ったことをしていますか?
これは、Qt Designer を使用して生成されたサンプル UI コードです。
これは、UI python コードと対話するために作成した python コードです。
python-3.x - 複数の Python3 インタープリター インスタンスを作成するには、どの API を使用すればよいですか?
Python3 インタープリターを Cocoa アプリに埋め込んでいます。私のアプリには複数の個別の Python 実行コンテキストが必要なので、複数のインタープリターを生成する必要があります。
Python3 のマニュアルでは、実行コンテキストを生成する方法が少なくとも 2 つあります。
PyInterpreterState_New
Py_NewInterpreter
完全に分離された python コンテキストを作成するには、それらとは何ですか? (システムプロセスのような)
c++ - Python をブーストし、埋め込まれたときに Python から C++ 関数を呼び出す
私は現在、次のものを持っています:
f を呼び出そうとしていますが、それを機能させるために必要な接着剤がわかりません。私ができる授業で
ただしboost::python::def
、like dos を返すboost::python::object
ようには見えclass_
ません
私の質問は、最初のテスト ケースを期待どおりに動作させるにはどうすればよいかということです。次に、2 番目のコード スニペットで自分の型を公開する方法は「正しい」ですか?