Question

Je suis en train d'écrire une fonction native qui renverra plusieurs objets Python

PyObject *V = PyList_New(0);
PyObject *E = PyList_New(0);
PyObject *F = PyList_New(0);

return Py_BuildValue("ooo", V, E, F);

Cette compile bien, cependant, quand je l'appelle d'un programme Python, je reçois une erreur:

  

SystemError: format incorrect ombles passé à Py_BuildValue

Comment cela peut-il être fait correctement?

EDIT: Les travaux suivants

PyObject *rslt = PyTuple_New(3);
PyTuple_SetItem(rslt, 0, V);
PyTuple_SetItem(rslt, 1, E);
PyTuple_SetItem(rslt, 2, F);
return rslt;

Cependant, n'est pas là un moyen plus court pour le faire?

Était-ce utile?

La solution

Je pense qu'il veut O majuscule? "OOO", pas "ooo".

Autres conseils

Cython .

return V, E, F
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top