我使用python3来调用用另一种语言编写的函数。该函数返回一个应该是中文字符的字符串。但我只得到一个字符串,它是b' \ xbb \ xf9 \ xb2 \ xee'而不是我期待的汉字。如何将其转换回我想要的角色?感谢。
更新:代码
temp=ts.RemoteCallFunc("StockIndexFutures_basis",["IF00","SH000300",ts.EncodeDate(2012,3,7),ts.EncodeDate(2012,5,1),"日线"],{});
,结果是一个列表:
[{b' \ xbb \ xf9 \ xb2 \ xee':7.313000000000102, b' SH000300':2631.487, b' date':b' 2012-04-26', b' IF00':2638.8}, {b' \ xbb \ xf9 \ xb2 \ xee':12.442999999999756, b' SH000300':2626.157, b' date':b' 2012-04-27', b' IF00':2638.6}]
答案 0 :(得分:2)
如果要将字节字符串b'\xbb\xf9\xb2\xee'
转换为正确的字符,可以在字节字符串上调用decode
并指定standard codecs之一。例如:
x = b'\xbb\xf9\xb2\xee'
x.decode('gbk') # gbk is listed as the "unified Chinese" codec
'基差'
我只是猜测编解码器,你可能想尝试一下。
目前尚不清楚您使用的是哪个Python 3.x版本,因此我使用Python 3.1,3.2,3.3和3.4进行了测试,结果对所有版本都相同。