假设:
using namespace boost::python;
void myClass::test(numeric::array& arrayParam) {
const tuple &shape = extract<tuple>(arrayParam.attr("shape"));
}
我想将它转换为int并打印例如。我试过int x = shape[0];
但它在初始化“消息中给了我一个”无法将'boost :: python :: api :: const_object_item'转换为'int'。
答案 0 :(得分:8)
shape[0]
为您提供了一个Python对象。要将其转换为int
或其他C ++类型,您需要提取值:
int x = extract<int>(shape[0]);