python 中怎么把类似这样的'\xe5\xae\x9d\xe9\xb8\xa1\xe5\xb8\x82'转换成汉字输出

如题所述

首先你要确定这是汉子的十六进制码,还有他的编码方式是什么

我姑且算是utf-8来说明吧

    把上述十六进制转成二进制,python byte类型(记不清是否可以)也可以手动转二进制

    p3使用str(s, 'utf8')   p2使用 s.decode('utf8')来对二进制解码

    输出汉字

你要确定上述十六进制码是汉字转过来的,否则无论尝试何种解码方式皆不可得

温馨提示:答案为网友推荐,仅供参考
第1个回答  2019-08-30
python2控制台输出会有这种情况,包括以下list里面的汉字虽然是utf8格式的但仍然不可见中文。
只需要包要查看的list转为str并decode("string_escape")
例子为:
li = [((33, 39), '宝马'), ((36, 39), '马')]
print str(li).decode("string_escape")
输出就是可查看的样式 [((33, 39), '宝马'), ((36, 39), '马')]
第2个回答  2020-09-22
python2控制台输出会有这种情况,包括以下list里面的汉字虽然是utf8格式的但仍然不可见中文。
只需要包要查看的list转为str并decode("string_escape")
例子为:
li = [((33, 39), '宝马'), ((36, 39), '马')]
print str(li).decode("string_escape")
输出就是可查看的样式 [((33, 39), '宝马'), ((36, 39), '马')]
2014-07-14
0
其他回答 4条回答
匿名用户
首先你要确定这是汉子的十六进制码,还有他的编码方式是什么

我姑且算是utf-8来说明吧
1. 把上述十六进制转成二进制,python byte类型(记不清是否可以)也可以手动转二进制
2. p3使用str(s, 'utf8') p2使用 s.decode('utf8')来对二进制解码
3. 输出汉字
你要确定上述十六进制码是汉字转过来的,否则无论尝试何种解码方式皆不可得
2014-07-14
0
匿名用户
str = '\xe5\xae\x9d\xe9\xb8\xa1\xe5\xb8\x82'
print str.decode('utf-8')
2014-07-14
0
匿名用户
我猜这个数据格式是字节流bytes格式吧?此时可用bytes.decode('gbk')解码为字符串。
比如:a=b'123'
c=a.decode('gbk')
print(c)
可得:123
2014-07-15
0
匿名用户
在Python shell下输入
>>> bytes = 'hello你好'
>>> bytes
'hello\xc4\xe3\xba\xc3'
>>> print bytes
'hello你好'
第3个回答  2019-05-30

我猜这个数据格式是字节流bytes格式吧?此时可用bytes.decode('gbk')解码为字符串。

比如:a=b'123'
c=a.decode('gbk')
print(c)
可得:123


第4个回答  2014-07-14
这串字符是utf8编码的
建议:#coding=utf8 指定编码为utf8
或.decode("utf8") 再转成你程序的编码 .encode("")
相似回答