Добавить элемент в boost :: python :: tuple

Я пытаюсь удалить второй элемент из boost::python::tuple объект. Кортеж, из которого я хочу удалить второй элемент, представляет собой список аргументов, передаваемых вызову функции Python.

Чтобы удалить элемент, который я делаю так:

BPY::object CallMethod(BPY::tuple args, BPY::dict kwargs)
{
...

// args is my original tuple from which I want to remove the second element

boost::python::api::object_slice firstSlice = args.slice(0, 1);
boost::python::tuple newArgs = boost::python::extract<boost::python::tuple>(firstSlice);

if(boost::python::len(args) > 2)
{
boost::python::api::object_slice secondSlice = args.slice(2, boost::python::len(args));
boost::python::tuple secondSliceArgs = boost::python::extract<boost::python::tuple>(secondSlice);

newArgs = boost::python::make_tuple(newArgs, secondSliceArgs);
}

args = newArgs;

...
}

Я думаю, что проблема в том, что boost::python::tuple не добавляет элемент,
но он создал новый кортеж с первым и вторым срезами в качестве элементов.

Как я могу решить это?

0

Решение

tuple является неизменной структурой данных в Python, в отличие от list,

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]