导入带有c++扩展的Python

Importing Python with extensions in C++

本文关键字:Python 扩展 c++ 导入      更新时间:2023-10-16

SOLVED:原来我在链接脚本中有一个混乱的路径变量

我有一个关于在c++中执行嵌入式python代码的问题。我有一个c++程序,它使用 动态执行一个普通的Python文件:
...
PyObject_CallObject(func, args);
...

当我在注入的python脚本中使用普通函数时,一切都如预期的那样工作。但是当我想在python脚本中导入一些扩展时:

import "libraryname"
... 

,我得到以下运行时错误:

importterror: No module named "libraryname"…

python代码使用常规解释器工作,而不是在c++中注入的解释器。我已经尝试在PATH var和链接器中显式加载python库文件夹,但没有成功。

(我使用的是Linux/Debian)

Python中的导入不使用引号。

import libraryname

同时,先将模块注入sys.modules