如何在 C++ 中访问 boost::python::tuple 的元素?

How to access elements of boost::python::tuple in C++?

我有一个从 Python 调用的 C++ 代码。我有从 python:

传递的元组列表
boost::python::list<boost::python::tuple>

如何访问 boost::python::tuple 的元素?

任何例子都会很方便。从文档中,我找不到访问器方法。

我能够使用 boost::python::extract<int>( ) 方法。

例如,对于包含一个整数和一个字符串的 python 元组:

Python 边:

t = (123, 'some string')

C++ 端:

void work_with_tuple(boost::python::tuple t)
{
   if (boost::python::len(t) != 2) throw std::invalid_argument("bad");

   int extracted_int = boost::python::extract<int>(t[0]);
   std::string extracted_string = boost::python::extract<std::string>(t[1]);
}