我有int
和string
的异构列表我希望将所有这些列表存储在vector<string>
中。
使用此命令:
std::string temp = boost::python::extract<std::string>(xList[i][j]);
我收到此错误:
TypeError: No registered converter was able to produce a C++ rvalue of type std::string from this Python object of type float
答案 0 :(得分:1)
您有两种选择:要么将值设为boost::python::object
并检查类型并执行您喜欢的操作,要么register a converter将数字转换为字符串(大概使用std::to_string
)。< / p>
您可以使用&#34;提取C ++类型&#34;的说明。在docs:
extract<std::string&> extractor(xList[i][j]);
if (extractor.check()) {
std::string& v = extractor();