1. 程式人生 > >Python_報錯:UnicodeDecodeError: 'gbk' codec can't decode byte 0x80 in position 0: illegal multibyte sequence

Python_報錯:UnicodeDecodeError: 'gbk' codec can't decode byte 0x80 in position 0: illegal multibyte sequence

color call trace 時報 decode bsp all nbsp enc

Python 報錯:UnicodeDecodeError: ‘gbk‘ codec can‘t decode byte 0x80 in position 0: illegal multibyte sequence

在運行序列化(pickle)相關功能時報錯:UnicodeDecodeError: ‘gbk‘ codec can‘t decode byte 0x80 in position 0: illegal multibyte sequence

上代碼:

>>> fp = open("a.txt","r+")
>>> import pickle
>>> pickle.load(fp)

Traceback (most recent call last):
  File 
"<stdin>", line 1, in <module> UnicodeDecodeError: gbk codec cant decode byte 0x80 in position 0: illegal multibyte sequence

原因分析:序列化操作時,文件模式不正確,改為“rb+”,即可

解決:

改成如下方法即可

>>> fp = open("a.txt","rb+")#文件模式為字節處理
>>> import pickle
>>> pickle.load(fp)
[apple, 
mango, carrot]

Python_報錯:UnicodeDecodeError: 'gbk' codec can't decode byte 0x80 in position 0: illegal multibyte sequence