python boost::::列表的长度

boost::python::list length

本文关键字:列表 boost python      更新时间:2023-10-16

是否有任何方法来计算从python传递到c++的列表长度?我想要做类似这样,但是list类缺少length(或任何类似的)方法:

class Awesome{
  public:
    void awesomeMethod(const boost::python::list& list_of_something){
      list_of_something.length() // suprisingly there's no such method
    } 
};

与Python一样,您应该使用自由函数len()来获取长度。试着

boost::python::len(list_of_something)

它被称为len,而不是length,并且它不是一个方法,而是一个独立的函数(Python不使用length方法,但使用长度协议和len()函数)。

return boost::python::len(list_of_something);