我正在为Python包装一个带有SWIG的C模块。有没有办法将所有成员都是相同类型(相同类型的Swig对象)的Python列表/元组转换为C数组?
发布于 2011-05-21 02:46:57
类型映射。您最可能寻找的是一个"in“类型映射,它将Python类型映射到C类型。声明如下所示:
%typemap(in) {将/*元组对象转换为C数组的C代码*/ }
在类型映射代码中,您可以使用变量$input来引用要转换的PyObject*,并将转换后的C数组赋值为$1。
http://docs.python.org/c-api/提供了有关Python/ C.的信息,您需要解压元组以获得这些项并将它们转换为C。
http://www.swig.org/Doc1.3/Typemaps.html提供了针对typemaps的SWIG文档。
文档一开始可能很难理解,所以看一下/share中的一些示例类型映射。该目录中的carrays.i也可以作为一个很好的起点。
https://stackoverflow.com/questions/4074611
复制相似问题