使Py_Main导入模块

时间:2017-01-11 14:09:33

标签: python python-3.x python-3.6

我有一个C ++程序,我在其中调用Py_Main进入Python。现在我想在Py_Main内部执行一些命令,但似乎无法弄清楚如何传递它。

我看到Py_Main调用了Py_Initialize,所以我想知道它是否有可能。

修改

我目前正在尝试:

Py_Initialize();
PyImport_ImportModule("myfoo");

Py_Main(argc, argv);

Py_Main myfoo无法使用import myfoo。我可以做assistive_technologies=com.sun.java.accessibility.AccessBridge 然后很好。

1 个答案:

答案 0 :(得分:1)

如果你需要在Python中用C / C ++执行简单的命令,你应该使用PyRun_SimpleString函数,它接受一个包含命令的const* char来执行。

您不需要涉及Py_Main,只需设置程序名称并使用Py_Initialize初始化Python,然后再致电PyRun_SimpleString。如果您需要导入模块并使用它,可以使用PyImport_Import