質問

複数のPythonオブジェクトを返すネイティブ機能を書いています

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

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

これにより、Pythonプログラムから呼び出すと、エラーが発生します。

SystemError:Bad Format CharがPy_BuildValueに渡されました

これはどのように正しく行うことができますか?

編集:次の作品

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

しかし、これを行うためのより短い方法はありませんか?

役に立ちましたか?

解決

私はそれがアッパーケースoを望んでいると思いますか? "OOO", 、 いいえ "ooo".

他のヒント

使用する システン.

return V, E, F
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top