我正在尝试将 python 嵌入到我的应用程序中,但很早就陷入了困境。
我将 python 嵌入到我的 C++ 应用程序中并使用本教程中找到的代码:http://docs.python.org/2/extending/embedding.html#pure-embedding http://docs.python.org/2/extending/embedding.html#pure-embedding
我的应用程序完全匹配并成功编译,没有错误。但是在运行应用程序时pModule = PyImport_Import(pName);
行失败返回 0 意味着我从 PyErr_Print() 得到错误输出
Failed to load "C:\Users\workspace\dpllib\pyscript.py"
ImportError: Import by filename is not supported.
正在使用命令调用应用程序C:\Users\workspace\ndnlib\pyscript.py multiply 50 150
我不能确定,但我认为由于 pName 设置为 argv[1] 并且您使用完整路径来调用脚本,因此 argv[1] 就是完整路径。这意味着代码将尝试导入“C:\Users\workspace\dpllib\pyscript.py”,而 python 不能(它只能导入“pyscript”)。
尝试通过在目录中键入“pyscript.py”来运行脚本,并查看错误是否更改为“无法加载“pyscript.py””。如果是这样,那么您必须修复它,以便它不只是导入 argv[1] 并修改字符串以获取模块名称而不是文件名。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)