2010-12-08 2 views
1

나는이 문제로 실행 해요 :boost.python 인수 형식이 일치 (numpy.int64 -> INT는)

Boost.Python.ArgumentError: Python argument types in 
    Dirichlet.Observe(int, numpy.int64, float) 
did not match C++ signature: 
    Observe(unsigned int, unsigned int, double) 

은 충분히 가까이 보인다?

일부 대체 후 중간 인수가 문제인 것으로 보입니다. numpy.int64를 int로 변환하려면 어떻게해야합니까?

+0

Int64를 부호없는 INT 어디에도 없습니다. int를 1 바이트에 팩하는 것과 같습니다. –

+0

@anon, 확실히, 잘라낼 수 있습니다. –

답변

3
당신이 시도 할 수

...

int(numpyint) 
+0

하, 그냥 int (...)해야만했다. 나는 아직 파이썬에 새로운 사람이다. –

+0

달콤한, 나는 그것을 반영하기 위해 내 대답을 편집했습니다, 감사합니다! – Pace

+0

참고 - http://docs.python.org/library/functions.html#int – spenthil