【发布时间】:2013-05-27 16:24:02
【问题描述】:
我正在尝试在我的 C 应用程序中嵌入一个 Python (2.7) 库,并且我正在使用 Python/C API 从 C 中调用 Python 代码。我需要调用一个采用关键字参数的 Python 方法。从语义上讲,我正在尝试在 Python 中实现以下行的等效项:
myobject.dosomething('blahdy blah', somearg=True)
通过阅读documentation,我设法获得了以下内容,但这并没有传递关键字参数:
PyObject_CallMethod(myobject, "dosomething", "s", "blahdy blah");
我对 Python 不是很熟悉,我有点卡在这一点上,因为文档对此并不完全清楚,而且 Google 搜索也没有找到太多有用的信息。如有任何帮助,我将不胜感激。
【问题讨论】:
-
似乎没有一个函数可以调用带有关键字参数的方法。至少,看看this。但是,
PyObject_Call始终有效。 -
@Bakuriu:感谢您的提示!最后,这正是我最终所做的。
标签: python python-2.7 python-c-api python-embedding