




Это зависит от того, написана ли ваша функция и не может быть изменена, и в этом случае вам может потребоваться проверить документацию Swig, чтобы узнать, есть ли уже карта типов из PyList в std :: vector (я думаю, что есть). Если нет, то использование PyObject * в качестве аргумента функции и использование Python C API для управления списками должно работать нормально. У меня пока с этим проблем не было. Для самодокументирования я рекомендую присвоить PyObject * некоторый ожидаемый тип, например «PythonList», чтобы параметры имели какое-то значение.
Это также может быть полезно:
Как представить std :: vector <int> в виде списка Python с помощью SWIG?
"лучший способ" с учетом каких ограничений? Разрешены ли внешние библиотеки или вы хотите использовать специальные средства Python?