2
내 c dll에서 파이썬으로 이차원 배열의 이질적인 데이터 배열을 반환해야합니다.ctypes를 사용하여 C에서 파이썬 튜플을 반환
내 C DLL에서이 목적을 위해 튜플의 튜플을 반환합니다. PyObject로 반환됩니다 *
튜플의이 튜플은 첫 번째 행의 두 번째 열에 대해 첫 번째 행의 첫 번째 열 tup [0] [1]에 대해 tup [0] [0]으로 액세스해야합니다. 에 ... 내 파이썬 코드에서.
나는 ctypes를 사용하여 튜플의 튜플을 반환하는 c 함수를 호출합니다. 그러나 파이썬 코드에서 반환 된 PyObject *에 액세스 할 수 없습니다.
libc = PyDLL("MyCDLL.dll")
x = libc.FunctionThatReturnsTuple()
if x != None :
print str(x[0][0])
print str(x[0][1])
그러나 오류가 발생합니다 - - 'INT'객체는 첨자에없는 파이썬 스크립트에서
extern "C" _declspec(dllexport) PyObject *FunctionThatReturnsTuple()
{
PyObject *data = GetTupleOfTuples();
return data; //(PyObject*)pFPy_BuildValue("O", data);
}
나는 다음과 같은 사용합니다. x가 포인터로 수신되기 때문에 이것이라고 생각합니다.
이것을 달성하는 올바른 방법은 무엇입니까?
, 당신이 수락 한 것도와 upvoted 없음. 도움을받는 응답을 투표하고 수락하면 사람들은 더 기꺼이 도울 것입니다. – Mark
죄송합니다! 나는 그렇게 했어야했다. – Abhaya