Python:如何打印这个特殊的字符串?

时间:2017-05-31 04:05:34

标签: python python-2.7 unicode

我想打印'\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])

但它引发了这个错误:UnicodeDecodeError: 'utf8' codec can't decode byte 0xd6 in position 0: invalid continuation byte。我也试过了deocde('latin-1')。但结果不是汉字。

1 个答案:

答案 0 :(得分:3)

尝试:

l = ['\xd6\xd0\xb9\xfa\xba\xda\xc1\xfa\xbd\xad']
a = [l[0].decode('gb2312').encode('utf-8')]
print(a[0])

输出:

中国黑龙江

更新:作为Mark的建议,使用l[0].decode('gb2312')就足够了。

l = ['\xd6\xd0\xb9\xfa\xba\xda\xc1\xfa\xbd\xad']
a = [l[0].decode('gb2312')]
print(a[0])