您好,登錄后才能下訂單哦!
小編給大家分享一下解決python編碼錯誤的方法,希望大家閱讀完這篇文章后大所收獲,下面讓我們一起去探討吧!
遇到問題:print輸入漢字時提示錯誤信息 UnicodeDecodeError: 'ascii' codec can't decode byte 0x?? in position 1: ordinal not in range(128)
查找解決辦法
1:了解python編碼格式
在python在安裝時,默認的編碼是ascii,當程序中出現非ascii編碼時,python的處理常常會報這樣的錯,python沒辦法處理非ascii編碼的。
2:如何查詢python的編碼格式
import sys sys.getdefaultencoding()
3:設置python默認編碼格式
sys.setdefaultencoding("utf-8")
此時在執行sys.getdefaultencoding(),就會發現編碼已經設置為utf-8了,但是在解釋器里修改的編碼只能保證檔次有效,在重啟編譯器后,編碼又被重置為默認的ascii了
一個永久解決的辦法
在python的Lib\site-packages文件夾下新建一個sitecustomize.py,內容為:
此時重啟python解釋器,執行sys.getdefaultencoding(),發現編碼已經被設置為utf8的了,多次重啟之后,效果相同。
這是因為系統在python啟動的時候,自行調用該文件,設置系統的默認編碼,而不需要每次都手動的加上解決代碼。
看完了這篇文章,相信你對解決python編碼錯誤的方法有了一定的了解,想了解更多相關知識,歡迎關注億速云行業資訊頻道,感謝各位的閱讀!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。