【发布时间】:2018-04-10 14:03:03
【问题描述】:
我有一个 C++ 代码调用名为“filename”的 python 脚本的一个名为“function”的函数。
PyObject module= PyImport_ImportModule("filename");
PyObject *python_fn = PyObject_GetAttrString(module, (char *)"function");
PyObject *args = PyTuple_New(0);
PyObject_CallObject(python_fn , args);
函数调用正确。现在我希望能够将指向 C 函数的指针传递给 python 模块。
我按照here 的描述尝试了PyImport_AppendInittab,但没有运气。
有什么建议吗?
谢谢 H.
【问题讨论】:
-
这个c++11怎么样?
-
我对 C++11 中的解决方案持开放态度。
-
目前尚不清楚您在这里实际尝试做什么 - 您拥有的代码与传递 C 函数指针完全无关。您想将 C 函数指针传递给需要 Python 可调用函数的函数吗? (
Inittab是用来设置内置模块而不需要 .so 文件,所以我认为这里不适用) -
代码就是我现在拥有的。不是代码不起作用。我想添加可以传递 C 函数指针并从 python 调用该函数的功能。抱歉没有说清楚。
标签: c++ python-3.x c++11 python-c-api