如何在Python中将一个SWIG包装的C结构从一种类型转换为另一种类型?

如何在Python中将一个SWIG包装的C结构从一种类型转换为另一种类型?,python,c,casting,swig,Python,C,Casting,Swig,我使用SWIG使C数据结构和函数可用于Python代码。我有以下两个结构- struct A { ..... }; struct B { struct A a; ...... }; 我从Python调用一个C函数,它返回一个(结构a*)b,其中b是结构b的一个实例 我可以在Python代码中键入将指针从struct A*强制转换为struct B*吗?可以,但这只是因为两个swig代理是相同的 在C对象和python对象之间有一个称为代理层的层

我使用SWIG使C数据结构和函数可用于Python代码。我有以下两个结构-

struct A {
  .....
};

struct B {
  struct A a;
  ......
};
我从Python调用一个C函数,它返回一个
(结构a*)b
,其中b是
结构b
的一个实例


我可以在Python代码中键入将指针从
struct A*
强制转换为
struct B*
吗?

可以,但这只是因为两个swig代理是相同的

在C对象和python对象之间有一个称为代理层的层