为了账号安全,请及时绑定邮箱和手机立即绑定

Python3下UnicodeDecodeError和KeyError的解决方法

with open(os.path.join(CIFAR_DIR, "data_batch_1"), 'rb') as f:
    data = pickle.load(f, encoding='bytes')
    print(type(data))
    print(data.keys())
    print(type(data[b'data']))
    print(type(data[b'labels']))
    print(type(data[b'batch_label']))
    print(type(data[b'filenames']))
    print(data[b'data'].shape)
    print(data[b'data'][0:2])
    print(data[b'labels'][0:2])
    print(data[b'batch_label'])
    print(data[b'filenames'][0:2])

1.cPickle是python2的包,对应python3的话,import pickle 就行。

2.在cifar的网页上有标注python3需要在pickle.load的时候增加encoding=‘bytes’。

3.使用data的时候,需要b'data'和b'labels'来指定key。

正在回答

1 回答

还有就是print的语法有点变化。

0 回复 有任何疑惑可以回复我~
#1

西小小贝

dgdgerg
2019-07-08 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

Python3下UnicodeDecodeError和KeyError的解决方法

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信