Если вы используете std_vector.i
, вы получите карты типов, реализованные std_vector.i
.Если вам это не нравится, вы должны написать свои собственные карты типов.
Вот карта типов, которая переопределяет поведение по умолчанию (без проверки ошибок) и возвращает список вместо кортежа:
%typemap(out) std::vector<int> (PyObject* obj) %{
obj = PyList_New($1.size());
for(auto i = 0; i < $1.size(); ++i)
PyList_SET_ITEM(obj, i, PyLong_FromLong($1[i]));
$result = SWIG_Python_AppendOutput($result, obj);
%}
Конечно, вы также можете просто сделать v = list(get_sweep_points())
, и теперь это список: ^)