我使用的是Python 2.6.6&从c ++调用python。
我如何编写PyTuple_Pack,它接受可变数量的参数。
我有变量参数,我使用for循环并填充我的数组。我的数组最多有1000个元素,但我只使用
填充顶部的no_of_argument元素python_obj[i] = PyString_FromString(arg[i])
我不想写像
这样的代码if(no_of arg ==1 )
return PyTuple_Pack(1, python_obj[0]);
if(no_of arg ==2 )
return PyTuple_Pack(2, python_obj[0],python_obj[1]);
我想要类似的东西 返回PyTuple_Pack(no_of_args,然后是我的数组,其中存在pyobjects;
在网上,我可以看到http://docs.python.org/release/2.4.4/whatsnew/node14.html
A new function, PyTuple_Pack(N, obj1, obj2, ..., objN), constructs tuples from a variable length argument list of Python objects. (Contributed by Raymond Hettinger.)
然而,在我的搜索中找不到使用上面编写好代码的示例,我需要你的帮助。
答案 0 :(得分:1)
使用PyTuple_New
创建一个具有正确大小的元组,然后遍历数组并使用PyTuple_SetItem
为元组填充值。