有時候在win中運行代碼會遇到題目中的報錯問題:
"UnicodeEncodeError: 'gbk' codec can't encode character '\xa0' in position XXX",讓人摸不着頭腦的是程序開頭的編碼設置# coding:utf-8 和數據流IO操作時的編碼轉化都已經在程序中加入加入了。gbk哪里來的呢?其實就是win中新文件的默認編碼是gbk。
當我們遇到編碼問題的時候,有三個地方需要注意的:文件的編碼,IDE的編碼,還有數據流IO操作過程中的編碼。
后面兩種很多網絡上的分享帖都有說,而第一種往往就比較少。恰恰標題中的這個問題就是因為文件的編碼是gbk所導致的。
解決的方法很簡單,以python的pycharm為例只要在設置中確保項目編碼和默認編碼統一為UTF-8.保存后,將報錯的代碼復制到新建的文件中運行即可。