埋め込みの例を実行しようとしていますが、明示的に追加しない限り、現在の作業ディレクトリからモジュールをロードできませんsys.path
。
PyRun_SimpleString("import sys");
PyRun_SimpleString("sys.path.append(\".\")");
Python は現在のディレクトリでモジュールを探すべきではありませんか?
Edit1 :モジュールをインポートしてみました:
Py_Initialize();
PyRun_SimpleString("import multiply");
それでも、次のエラーで失敗します。
Traceback (most recent call last):
File "<string>", line 1, in <module>
ImportError: No module named multiply
Edit2:sys.path
ドキュメントから:
スクリプト ディレクトリが利用できない場合 (たとえば、インタプリタが対話的に呼び出された場合、またはスクリプトが標準入力から読み取られた場合)、path[0]は空の文字列であり、Python に現在のディレクトリ内のモジュールを最初に検索するように指示します。
not availableの意味がわかりませんが、印刷sys.path[0]
すると空ではありません。
/usr/lib/pymodules/python2.7