Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/fsharp/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 3.x Python3中的Pickle文件_Python 3.x_Pickle - Fatal编程技术网

Python 3.x Python3中的Pickle文件

Python 3.x Python3中的Pickle文件,python-3.x,pickle,Python 3.x,Pickle,我尝试在Python3中读取和加载pickle文件 import pickle as pickle pickleFileName = 'data/fingerDataSet' + '.pickle' pickleFile = open(pickleFileName, 'rb') data = pickle.load(pickleFile) pickleFile.close() 但是在第data=pickle.load(pickle文件)行中,我遇到了一个奇怪的错误UnicodeDecod

我尝试在Python3中读取和加载pickle文件

import pickle as pickle


pickleFileName = 'data/fingerDataSet' + '.pickle'
pickleFile = open(pickleFileName, 'rb')

data = pickle.load(pickleFile)
pickleFile.close()

但是在第
data=pickle.load(pickle文件)
行中,我遇到了一个奇怪的错误
UnicodeDecodeError:“ascii”编解码器无法对第5位的字节0xc0进行解码:序号不在范围内(128)

pickle不适用于不同的Python版本。 在这种情况下,可能是原始数据位于Python2 str中,其中包含字节,而Python3版本正试图将其作为文本读取,执行隐式解码


您应该做的是在Python 2环境中解压数据,并以不依赖于Python版本的方式保存数据(例如,如果它是图像,请使用PIL库编写PNG文件)

文件是如何编写的,它包含什么内容?在unicode中,
0xc0
是字母À。所以问题应该在文件中,我的意思是更接近于什么python对象被pickle并写入文件?我在那里发现了一些托管和上传的文件,所以它应该是一个手指的图像,这在Python2中工作,所以文件是正常的。从不受信任的源取消pickle是一个坏主意。此外,用Python3解压在Python2中处理过的数据也有它自己的问题。