Python 2.7 ascii' codec can't encode characters
對於Pythong使用的版本是2.7版,就一定會碰到編碼上的問題
像是:
UnicodeEncodeError:
會出現這個問題,是因為習慣性的編碼是ascii,會用此去編碼解碼程式中的符號以及文字,但是常用的中文不在此範圍內,也就是上述看到的128。
其實解決的方式很簡單,只要去修改其默認的編碼就好,一般來說會改成UTF-8的編碼,但是繁體中文的編碼是Big5,所以在此要將其編碼改成Big5。
因此習慣性會在一開始就加上
這樣後顯示的結果就不會是亂碼,而是繁體中文了。
另外, CP950的問題還蠻繁的,這篇就不仔細探討這個問題了
希望每天都記錄自己遇到的問題,之後方能略過啊!!!
像是:
UnicodeEncodeError:
UnicodeEncodeError: 'ascii' codec can't encode characters in position 0-78: ordinal not in range(128)
會出現這個問題,是因為習慣性的編碼是ascii,會用此去編碼解碼程式中的符號以及文字,但是常用的中文不在此範圍內,也就是上述看到的128。
其實解決的方式很簡單,只要去修改其默認的編碼就好,一般來說會改成UTF-8的編碼,但是繁體中文的編碼是Big5,所以在此要將其編碼改成Big5。
因此習慣性會在一開始就加上
import sys
reload(sys)
sys.setdefaultencoding('big5')
這樣後顯示的結果就不會是亂碼,而是繁體中文了。
另外, CP950的問題還蠻繁的,這篇就不仔細探討這個問題了
希望每天都記錄自己遇到的問題,之後方能略過啊!!!
留言
張貼留言