c++中怎样读取python字典,获得字典中的key值(一个key中有多个值)和value值? 10

比如python中的字典为:node={(‘a’,‘b’):‘1q’,(‘b’,‘c’):‘2q’,(‘c’,‘d’):‘3q’}怎样将python中PyObject类型... 比如python中的字典为:node={(‘a’,‘b’):‘1q’,(‘b’,‘c’):‘2q’,(‘c’,‘d’):‘3q’}
怎样将python中PyObject 类型转换成c++中string类型?PyString_AsString只能转换key中只有一个值的,一个key中有多个值就会出错。用PyString_AS_STRING转换会出现乱码,求解?
展开
 我来答
百度网友d57e73d
2013-07-02 · TA获得超过989个赞
知道小有建树答主
回答量:1043
采纳率:0%
帮助的人:862万
展开全部
因为这本身就不是字符串啊.你可以约定好,在python脚本中将参数先转换成str,然后C接口这边也接受字符串入参.
追问
这怎么弄啊?在python脚本中将参数先转换成str?求解?
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
bdwisyou7d
2013-07-02 · TA获得超过1.3万个赞
知道大有可为答主
回答量:3774
采纳率:81%
帮助的人:1062万
展开全部
那是当然。只有一个值这是标准用法。其实没有必要用多个值作为KEY啊。你可以简单的用str(('b','c'))把它变成一个KEY。这样就可以了。
追问
这怎么弄啊?菜鸟不懂,求解!
追答
我的意思与管家光的意思一样。就是你先在python端将KEY值转成字符串类型的。这样C语言就容易处理了。
通过str(('b','c'))将键值('b','c')转换成一个KEY

顺便说一下,既然你想学习python与C++接口,就要知道这个接口很麻烦。通常我们将python编程习惯尽量改成C++习惯后再做接口。

C++只是为了提高某些计算的效率。所以并不是为了接口而接口。 比如我们通常在python端将所有的数据结构类型转换成固定类型数组和字符串,然后转到C++这边处理。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式