形如 UnicodeDecodeError: 'ascii' codec can't decode byte 0x9a in position 0: ordinal not in range(128)
解决方法:参考
Pickle incompatibility of numpy arrays between Python 2 and 3 - Stack Overflow
import pickle
import gzip
import numpy
with open('mnist.pkl', 'rb') as f:
u = pickle._Unpickler(f)
u.encoding = 'latin1'
p = u.load()
print(p)
然后就可以正常读出结果了