今天就跟大家聊聊有关UnicodeDecodeError: 'utf8'的解决方法是什么,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。
UnicodeDecodeError: 'utf8' codec can't decode byte 0xd4 in position x: invalid continuation byte
更多0
pythonencode字符串
在执行下面语句时会报错
o = "a test of \xe9 char" #I want this to remain a string as this is what I am receiving
v = o.decode("utf-8")
错误堆栈信息如下:
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "C:\Python27\lib\encodings\utf_8.py",
line 16, in decode
return codecs.utf_8_decode(input, errors, True) UnicodeDecodeError:
'utf8' codec can't decode byte 0xe9 in position 10: invalid continuation byte
这是因为\xe9不是合法的utf-8字符,不符合utf-8的定义,对于这种情况可以这么处理:
o = "a test of \xe9 char" #I want this to remain a string as this is what I am receiving
v = o.decode('latin-1').encode("utf-8")
print v
问题
UnicodeDecodeError: 'utf-8' codec can't decode byte 0x80 in position 0: invalid start byte解决方法
解决:
这是因为\xe9不是合法的utf-8字符,不符合utf-8的定义,对于这种情况可以这么处理:
li.append(line.decode('utf-8','ignore
看完上述内容,你们对UnicodeDecodeError: 'utf8'的解决方法是什么有进一步的了解吗?如果还想了解更多知识或者相关内容,请关注编程网行业资讯频道,感谢大家的支持。