我试图做一些神经网络工作,但我用Python 2.7编写了文件,我有Python 3.6。那是我的代码:
import _pickle as cPickle
import gzip
import numpy as np
def load_data():
k = gzip.open('../data/mnist.pkl.gz', 'rb')
training_data, validation_data, test_data = cPickle.load(k, encoding='latin1')
k.close()
return (training_data, validation_data, test_data)
这就是我不断得到的错误:
文件" mnist_loader.py",第44行,在load_data中 training_data,validation_data,test_data = cPickle.load(k,encoding =' latin1')
UnicodeDecodeError:' ascii'编解码器不能解码位置614中的字节0x90:序数不在范围(128)
中
通过StackOverflow,我看到有人说我应该把' encode =' latin1''''''''''''''''''' 
非常感谢!
答案 0 :(得分:0)
最后,我尝试了这个:
with gzip.open('../data/mnist.pkl.gz', 'rb') as k:
training_data, validation_data, test_data = cPickle.load(k, encoding='latin1')
k.close()
return (training_data, validation_data, test_data)
它似乎有效,但我不知道为什么;)
谢谢大家!