我在我的C ++应用程序中嵌入了Python,并且我创建了几个可以从Python调用的C函数。
要获得参数,我现在正在做:
if (!PyArg_ParseTuple(args, "zk", ¶m1, ¶m2))
return NULL;
但是,我希望param2
是可选的。我如何分别检查其中两个?
答案 0 :(得分:3)
|
表示Python参数列表中的其余参数是可选的。与可选参数对应的C变量应初始化为其默认值 - 如果未指定可选参数,则
PyArg_ParseTuple()
不会触及相应C变量的内容。
param2 = 42;
if (!PyArg_ParseTuple(args, "z|k", ¶m1, ¶m2))
return NULL;