在Python中生成常量
我正在使用SWIG为我的C ++类库创建一个Python接口。
我无法弄清楚如何利用Python中由SWIG创建的常量 。 我甚至无法打印他们的价值。
例如,Python中的这两个打印语句都会默默失败......
print CONST1
print rep (CONST1)
在C ++中 ,我有这个
#define CONST1 0x20000
const int CONST2 = 0x20000; // No different to #define in SWIG-generated code.
如果我看看由SWIG创建的Python模块 ,它有这样的东西...
CONST1 = _theCPPlibrary.CONST1
另外,我尝试使用SWIG%常量指令作为一个实验(如果我能避免它,我真的不想使用它,因为它涉及在SWIG输入文件中复制我的常量)。 %常量指令也给出了相同的结果。
我是一名C ++程序员,并且是Python中的noob。
编译后,你将得到一个python源文件:theCPPlibrary.py和一个pyd文件:_theCPPlibrary.pyd。 您必须先导入python模块:
import theCPPlibrary
CONST1由#define定义,它可以通过以下方式访问:
print theCPPlibrary.CONST1
CONST2由const定义,不是全局变量,可通过以下方式访问它:
print theCPPlibrary.cvar.CONST2
链接地址: http://www.djcxy.com/p/48329.html
上一篇: generated Constants in Python
下一篇: Can I use generated swig code to convert C++ object to PyObject?