我遇到了麻烦,试图从我的C++代码调用Python函数。Python C API - 创建关键字
我试图调用Django的功能call_command,具有下列参数:
call_command('test', stdout=content)
见here原因。这运行没有标准输出=内容参数的命令:
PyObject_CallFunctionObjArgs(executeFunc, PyString_FromString("test"), NULL)
我不能,为我的生活,找出如何创建此关键字。
PyDict_New();
PyDict_SetItemString(...);
使我得到一个'stdout'='content'字符串,而不是stdout = content。
Py_BuildValue("{s=s}", ... , ...)
做同样的事情。
我可以得到的内容PyObject没有问题,如果有必要,我似乎无法正确创建stdout关键字参数没有Python把引号(处理它作为一个字符串)在某一点。
如何从C API调用call_command('test',stdout = content)?
看看这可以帮助你:http://stackoverflow.com/questions/145270/calling-c-c-from-python – karthikr
似乎并不是我想要的。 我只需要找出如何创建这个stdout关键字,并将它作为函数调用参数在C中传递。我不想使用外部工具,如SWIG或Boost:Python。 –