我已经能够找到一些我知道的东西,你需要包含 Python.h 并且你需要有
Py_Initialize();
//code that runs the python script
Py_Finalize();
打开和关闭解释器,但中间部分让我迷失了。我能找到的关于该主题的大多数信息都使用带有一些参数的 Py_SimpleString() 命令。我已经搜索了一段时间,但找不到任何文档可以清楚地解释该命令正在做什么或如何准确使用它。
我不一定需要 python 脚本直接将值传递给 C++ 程序。它正在写入一个文本文件,C++ 可以解析该文本文件以获取它需要的部分。我只需要让 .py 文件运行并执行其功能。
任何帮助表示赞赏!
从 C++ 程序中运行 Python 脚本的最简单方法是通过 PyRun_SimpleString(),如示例所示这个网页:
#include <Python.h>
int main(int argc, char *argv[])
{
Py_SetProgramName(argv[0]); /* optional but recommended */
Py_Initialize();
PyRun_SimpleString("from time import time,ctime\n"
"print 'Today is',ctime(time())\n");
Py_Finalize();
return 0;
}
如果您想运行存储在 .py 文件中的脚本,而不是直接以字符串形式提供 Python 源文本,您可以调用PyRun_SimpleFile() 而不是 PyRun_SimpleString()。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)