2016-10-27 5 views
0

私のC++アプリケーション用のPython拡張モジュールを作成しています。また、私はPythonインタプリタを同じアプリケーションに組み込み、これらのモジュールを使用しました。したがって、モジュールは同じアプリケーションで作成され、使用されるため、これらの拡張モジュールを個別に構築することはできません(Py_Initialize()の前にPyImport_AppendInittab("modulename", &PyInit_modulename)を追加するだけです)。 私がこれを好きなら、Pythonのパッケージ構造を作ることは可能でしょうか? 現在、私はimport moduleを持っていますが、import package.moduleを埋め込みのPythonインタプリタで使用する必要があります。 モジュールの機能のようにパッケージを作成するためのものはありますかPyModule_Create()Python拡張モジュールパッケージ構造(名前空間)

+0

この回答のようなモジュールを動的に作成することができます:http://stackoverflow.com/questions/3799545/dynamically-importing-python-module –

+0

いいえ、それは私を助けません。 – kjrkvc

答えて

0

今後の調査では、拡張モジュールでパッケージ構造を使用することはできません。実際には、単純なトリックを使用して構造を作成し、モジュールを既存のモジュールにオブジェクトとして追加することができます。たとえば、次のような構造を作成することができます。mod1.mod2.mod3。しかし、それはパッケージのように同じではありません。 import mod1.mod2またはimport mod1.mod2.mod3は使用できません。 import mod1を使用する必要があり、それはすべてのモジュールをインポートします。 1つのモジュールだけをインポートする方法はありません。

関連する問題