您当前的位置: 首页 >  Python
  • 4浏览

    0关注

    2393博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

成功解决Python3版UnicodeDecodeError: ‘ascii‘ codec can‘t decode byte 0x90 in position 614: ordinal not in

一个处女座的程序猿 发布时间:2018-01-11 23:37:11 ,浏览量:4

成功解决Python3版UnicodeDecodeError: 'ascii' codec can't decode byte 0x90 in position 614: ordinal not in

 

 

 

 

目录

解决问题

解决过程

解决方法

 

 

 

解决问题

UnicodeDecodeError: 'ascii' codec can't decode byte 0x90 in position 614: ordinal not in range(128)

 

 

 

解决过程

1、最近在做深度学习的项目,在调用GitHub上的文件时,想利用mnist_loader的数据集,没想到运行以后出现了错误UnicodeDecodeError: 'ascii' codec can't decode byte 0x90 in position 614: ordinal not in range(128)

 

2、于是,笔者就各种百度啊,各种度,国内外的,但是答案差不多都有一种,就是添加以下代码

 

3、可是,笔者在python中各种加入,各种尝试,还把utf8改为gbk试了好几次,又出现了这个错误,我去去去!

 

4、笔者又不厌其烦的跑去百度,各种度,国内外的,最后发现了预料中的一件事,在Python 3.x中不好使了提示name reload’ is not defined,在3.x中已经被毙掉了被替换为

import importlib
importlib.reload(sys)

并且,Python 3默认是utf8编码格式,我了各种去,心里一万只草泥马,同样是python,python2和python3咋就差别这么大呢!还要自行车?要啥自行车,啊啊啊!

 

 

5、于是,笔者陷入了沉思,也就是睡着了,哈哈,开玩笑,继续谷歌、百度啦,直到发现了下边这句话,

 

6、皇天不负有心人,哈哈,终于改对啦,谢谢小梦dream,感谢小梦这位仁兄

将
training_data, validation_data, test_data = cPickle.load(f)

改为
training_data, validation_data, test_data = cPickle.load(f,encoding='bytes')

即可!

 

7、哈哈,成功!搞定!努力总是又收获的,继续努力啦!

 

 

 

解决方法

training_data, validation_data, test_data = cPickle.load(f)

改为

training_data, validation_data, test_data = cPickle.load(f,encoding='bytes')

哈哈,大功告成!

 

 

关注
打赏
1664196048
查看更多评论
立即登录/注册

微信扫码登录

0.0890s