나는 파이썬을 C++에 임베드했다. 그리고 나는 함수를 실행 한 결과 인 boost :: python :: object의 타입을 찾는 방법이 있는지 알고 싶다. 파이썬 모듈. 위의 코드에서부스트 파이썬 객체의 유형을 찾는다
boost::python::object module_ = boost::python::import("..libName");
boost::python::object result_ = module_.attr("..functionName")(arg1, arg2,...);
//suppose if the result is int,
int a_ = boost::python::extract<int>(result_);
, 내가 그것을 추출하기 전에 결과의 유형 을 찾을 수있는 방법이 있는지 알고 싶은 것이 :이처럼 내 코드가 있습니다. 위의 코드에서 result_는 list, tuple과 같은 유형일 수 있습니다.
신뢰할 수 없다고 제안했듯이.은 행복하게 정수를 허용합니다 –
Sergei
예. 이 게시물 이후로, 나는'extract'가 호환 가능한 타입간에 자동적으로 변환을 시도 할 것이라는 것을 깨달았습니다. 정확하게 정수인지 확인하는 방법은'PyInt_Check'를 사용하는 것입니다. – csl