2014-01-29 2 views
1

a와 b를 반환하는 다른 cython 최적화 함수를 사용하는 cython (파이썬 함수 최적화) 함수를 작성하고 있습니다. 두 번째 함수에서 a와 b를 사용하여 계산을 수행하고 싶지 않은지 어떻게 알 수 있습니까? 확장형 (클래스, 구조체 ???)과 같은 것을 사용해야합니까, 아니면 다른 방법이 있습니까? 여기에 (나는 전문가가 아니에요하지만 그것은 아주 잘 작동) 내 파이썬 기능은 다음과 같습니다다중 출력 함수를 cython으로 호출하는 방법

for i in range(n_max): 
    output  = func.func(indata,i) // My tuple [2] 
    tmp1  = output[0] 
    tmp2  = output[1] 
....other calculations 

어떤 제안이?

+0

입니다. 구조체를 전달하는 것이 좋습니다. – Veedrac

답변

1

직접 작성한 C 구조체를 사용할 수 있습니다. C++을 사용하여 컴파일하는 경우 C++ std::pair을 사용할 수 있습니다. 그것에 대한 Cython 구문은

from libcpp.vector cimport pair 

cdef pair[int, int] myPair2