我是python编程的新手。 在python代码中调用函数Vigra.learning.RandomForest.Writehdf5时,出现以下错误:

self.RF.writeHDF5(fileName, pathInFile, overwriteFlag)
Boost.Python.ArgumentError: Python argument types in
RandomForest.writeHDF5(RandomForest, str, str, bool)
did not match C++ signature:
writeHDF5(class vigra::RandomForest<unsigned int,struct vigra::ClassificationTag>,          class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >   filename, class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > pathInFile='')

我已经安装了python扩展包vigranumpy以及boost python,但是我还没有安装vigra(C ++图像处理库)。 我无法找到错误的原因。

提前致谢

===============>>#1 票数:0

Boost.Python错误表明调用者正在尝试使用RandomForest.writeHDF5(str, str, bool)的C ++签名,但导出的C ++函数期望使用RandomForest.writeHDF5(str, str) 我不确定overwriteFlag打算做什么,但是改变了:

self.RF.writeHDF5(fileName, pathInFile, overwriteFlag)

self.RF.writeHDF5(fileName, pathInFile)

应该解决Boost.Python.ArgumentError异常。

  ask by user2287258 translate from so

未解决问题?本站智能推荐:

1回复

向Boost.Python子类添加构造函数会导致参数不匹配错误

我试图将Python用作我的C ++项目的脚本语言,因此我接触了Boost.Python,以减轻任务的繁琐程度。 我有一个C ++类(ScriptSystem),它负责保存对Python脚本的引用并执行它们。 Python脚本应该是包装的名为IScript的C ++接口的子类。
2回复

boost.python:参数类型与C ++签名不匹配

在python中调用C ++函数时遇到一个奇怪的问题。 我公开了一个我想要调用函数的类: 我从另一个通过.def_readonly(...)公开的类的成员变量中得到一个std::shared_ptr<MyClass> 当我尝试调用该函数时,我收到以下错误:
2回复

Boost.Python和Boost.Signals2:分段错误

我在将我的boost.python公开的现有C ++库中集成boost.signals2时遇到问题。 我有一个使用std::shared_ptr公开给python的类。 该类应该能够在某些事件上发出一些信号。 因此,我公开了一个connect_slot函数,该函数以boost::pyt
1回复

如何从boost.python使用class_的参数

第一个问题:class_类具有四个参数。 我不了解Bases和HeldType的参数。如何使用这些参数。 此文档: http : //www.boost.org/doc/libs/1_51_0/libs/python/doc/v2/class.html 第二个问题:我必须做一个p
2回复

Boost.python自动转换参数

我使用boost.python来包装一个C ++类'A',它接受一个字符串作为构造函数。 然后我有一个'fun(A&arg)'函数,它引用了'A'作为参数。 我想有一个'fun'的python包装器,如果我传递一个对python字符串的引用的变量,这个引用首先自动转换为对'A'的引用。
1回复

boost.python参数类型不匹配(numpy.int64-> int)

我遇到了这个问题: 似乎足够接近? 进行一些替换后,似乎中间的问题是问题所在。 如何将numpy.int64转换为int?
1回复

Boost.Python与签名左值不匹配

我有一个Foo类,它具有要公开的成员x ,但是要通过getter函数而不是属性。 我刚刚发现了make_getter ,所以我想make_getter一下: 但是,这失败了: 该错误甚至意味着什么? 显然签名匹配! 我怎样才能解决这个问题?
1回复

Boost.Python和CMake链接和加载错误

我有一个像这样的main.cpp : 还有一个CMakeLists.txt文件: 我可以运行cmake并且make很好。 它为我输出一个很好的小libtest.so文件。 为了测试它,我有一个像这样的Python脚本: 在与libtest.so相同的目录中运行此命令会
1回复

Boost.Python安装失败并出现bjam错误

我一直在努力使Boost.Python运行。 我正在按照http://www.boost.org/doc/libs/1_41_0/libs/python/doc/building.html中提到的步骤进行操作。 我遵循第3.1节的步骤2。 Bjam司机让我头疼。 因此,如文档中所述,
1回复