python列表中单个元素的访问方式_从boost::python::object列表中获取单个元素,用于python routin...

我有一个c++boost python对象(PyObject*上的boost包装器)用于python列表PyObject * pyList = func(...);

boost::python::object listObj(handle<>(boost::python::borrowed(pyList)));

我可以通过对其执行以下操作来验证这确实是一个列表

^{pr2}$

从I-1元素中减去It元素,并创建一个新的列表,然后提取每个元素并在C++中打印到STDUT。在

我想做的是将这个listObj与我定义为的print函数一起使用boost::python::object print = std.attr("print");

但我希望它打印我指定的元素之一。我会用python写print myList[0]

因为它只是一个python列表。但当我试着print(listObj[0]);

在c++中使用boost pythonError in Python: : No to_python (by-value) converter found for C++ type: boost::python::api::proxy<:python::api::item_policies>.

那么,如何从python列表对象访问一个元素,并在c++中像上面的print方法(或任何其他接受字符串输入的python函数)那样在python调用中使用它呢?在

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值