[英]Python: How to print this special string?
I want to print '\\xd6\\xd0\\xb9\\xfa\\xba\\xda\\xc1\\xfa\\xbd\\xad'
which is a Chinese character. 我要打印'\\xd6\\xd0\\xb9\\xfa\\xba\\xda\\xc1\\xfa\\xbd\\xad'
这是一个汉字。
l = ['\xd6\xd0\xb9\xfa\xba\xda\xc1\xfa\xbd\xad']
a = [l[0].decode('utf-8')]
print(a[0])
But it raises this error: UnicodeDecodeError: 'utf8' codec can't decode byte 0xd6 in position 0: invalid continuation byte
. 但这会引发此错误: UnicodeDecodeError: 'utf8' codec can't decode byte 0xd6 in position 0: invalid continuation byte
。 I also tried deocde('latin-1')
. 我也尝试过deocde('latin-1')
。 But the result aren't Chinese characters. 但是结果不是汉字。
Try with: 尝试:
l = ['\xd6\xd0\xb9\xfa\xba\xda\xc1\xfa\xbd\xad']
a = [l[0].decode('gb2312').encode('utf-8')]
print(a[0])
output: 输出:
中国黑龙江
Update: as Mark's advice, use l[0].decode('gb2312')
will be sufficient. 更新:按照Mark的建议,使用l[0].decode('gb2312')
就足够了。
l = ['\xd6\xd0\xb9\xfa\xba\xda\xc1\xfa\xbd\xad']
a = [l[0].decode('gb2312')]
print(a[0])
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.