我正在翻译下面的代码
d = {} d[0] = None
进入C与boost.python
boost::python::dict d; d[0] = ?None
如何在boost.python中获取None对象?
回答:
boost::python::dict d; d[0] = boost::python::object();
解决方法
没有一个boost :: python :: object的构造函数,它接受一个PyObject *(从我的理解来看,如果将Python类型映射到C类型,因为PyObject *可以是任何东西,所以这样的ctor会使整个想法无效).根据
documentation:
object();
Effects: Constructs an object managing a reference to the Python
None
object.