UnicodeDecodeError: 'ascii' codec can't decode byte 0x82 in position 4..... 针对调用文件出现该错误时的解决办法
生活随笔
收集整理的這篇文章主要介紹了
UnicodeDecodeError: 'ascii' codec can't decode byte 0x82 in position 4..... 针对调用文件出现该错误时的解决办法
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
這個問題確實困擾了我好久,上網查詢了很多博客,發現大家的解決方案都千篇一律,無非是那幾個方法。但是有些方法是針對不同版本的python設計的,我們應該明確我們的問題出在哪,再去找相應的解決方案。
首先,我們需要明確一點,python2.7的編碼格式默認為“ascii”,而python3.6的編碼格式為“utf-8”。意思就是,你在python2.1環境下生成的所有附加文件都是以python2.7的一套東西編碼的,python3.6也同樣。先來介紹網上的辦法。
1.網上解決辦法
if sys.getdefaultencoding() != 'utf-8':
??? reload(sys)
??? sys.setdefaultencoding('utf-8')
但用了這個方法的同學會發現,他會報關于reload函數的錯誤,這是因為,python3.6已經拋棄了reload和setdefaultendoding。所以如果你是python3.6用戶,就別想這個方法了。
?
2.根本解決辦法,是將你所需要的附加文件,在現行python版本下生成一遍方可解決這個問題。
?
總結
以上是生活随笔為你收集整理的UnicodeDecodeError: 'ascii' codec can't decode byte 0x82 in position 4..... 针对调用文件出现该错误时的解决办法的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: TypeError系列之:TypeErr
- 下一篇: sess.run接收返回值得变量和ses