我想打印'\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')
。但结果不是汉字。
答案 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])