Ниже приведен код C ++, который я хочу импортировать.
#include <boost/python.hpp>
#include <string>
/*
* This is the C++ function we write and want to expose to Python.
*/
const std::string hello() {
return std::string("hello, zoo");
}
/*
* This is a macro Boost.Python provides to signify a Python extension module.
*/
BOOST_PYTHON_MODULE(zoo) {
// An established convention for using boost.python.
using namespace boost::python;
// Expose the function hello().
def("hello", hello);
}
Следующий код является скриптом Python.
import zoo # In zoo.cpp we expose hello() function, and it now exists
in the zoo module.
assert 'hello' in dir(zoo) # zoo.hello is a callable.
assert callable(zoo.hello) # Call the C++ hello() function from Python.
print zoo.hello()
Когда я пытаюсь запустить скрипт, я не получаю "hello, zoo" на терминале в качестве вывода.Где я делаю ошибку?
Ниже приводится сообщение об ошибке, которое я получаю:
импорт: не авторизован zoo' @ error/constitute.c/WriteImage/1028.
./visit_zoo.py: line 3: syntax error near unexpected token
('./visit_zoo.py: строка 3: `assert' привет'in dir (зоопарк)'