언어 | Framework/Python
[Python] Embedding Python return 값 여러 개 받기
woongs_93
2021. 11. 12. 17:34
반응형
PyObject *pFunc, *pArg, *pResult;
PyObject *pValue1, *pValue2, *pValue3;
PyObject *ob1 = NULL, *ob2 = NULL, *ob3 = NULL;
// Function name
pFunc = PyObject_GetAttrString(m_pModule, "func");
if (pFunc && PyCallable_Check(pFunc)) {
// Set values
pValue1 = PyLong_FromLong('long_value');
pValue2 = PyLong_FromLong('long_value');
pValue3 = PyLong_FromLong('long_value');
// Set arg
pArg = PyTuple_New(3);
PyTuple_SetItem(pArg, 0, pValue1);
PyTuple_SetItem(pArg, 1, pValue2);
PyTuple_SetItem(pArg, 2, pValue3);
// Call Function
pResult = PyObject_CallObject(pFunc, pArg);
// Get Result
PyArg_ParseTuple(pResult, "O|O|O:pResult", &ob1, &ob2, &ob3);
// 나머지는 ob1,2,3을 PyObject->C++ 변수로 변경하면 된다.
}
반응형