在C程序中嵌入Python模块时,如何将C结构传递到Python中
我有一个正在运行的C程序,现在我嵌入了一个实现特定函数的python脚本 问题是,传递到Python中的参数是C中定义的一个复杂的嵌套C结构。我希望该解决方案能够轻松实现两种方式的通信: 1.用C创建结构,并将其传递到Python中。让Python做一些修改。 2.用Python创建结构。然后把它传给C 我尝试使用SWIG为该结构生成一些包装器,以及使用SWIG for Python生成一些帮助函数,这样它就可以返回该结构的一些嵌套部分,这样我就可以通过Python轻松地访问该结构在C程序中嵌入Python模块时,如何将C结构传递到Python中,python,c,structure,swig,mixed-programming,Python,C,Structure,Swig,Mixed Programming,我有一个正在运行的C程序,现在我嵌入了一个实现特定函数的python脚本 问题是,传递到Python中的参数是C中定义的一个复杂的嵌套C结构。我希望该解决方案能够轻松实现两种方式的通信: 1.用C创建结构,并将其传递到Python中。让Python做一些修改。 2.用Python创建结构。然后把它传给C 我尝试使用SWIG为该结构生成一些包装器,以及使用SWIG for Python生成一些帮助函数,这样它就可以返回该结构的一些嵌套部分,这样我就可以通过Python轻松地访问该结构 这是一个好的
这是一个好的解决方案,还是我可能会错过一些非常简单的解决方法?根据我的经验,SWIG应该能够以您期望的方式处理任意嵌套结构brunobeltran0这并不容易,你需要一个PyTypeObject,特别是tp_成员搜索python的c api文档以获取更多信息。根据我的经验,SWIG应该能够以你期望的方式处理任意嵌套的结构。你在使用它的过程中有什么特别的问题吗?@brunobeltran0暂时没有,因为我才刚开始。但是我没有找到很多类似的作品,除了那一部,所以我很担心我的创作方向。无论如何谢谢你:看到了吗