Python設定預設語言編碼

2021-08-25 16:27:28 字數 823 閱讀 9260

當python中間處理非ascii編碼時,經常會出現如下錯誤:

unicodedecodeerror: 'ascii' codec can't decode byte 0x?? in position 1: ordinal not in range(128)

0x??是超出128的數字,python在預設的情況下認為語言的編碼是ascii編碼,所以無法處理其他編碼,需要設定python的

預設編碼為所需要的編碼。

乙個解決的方案是在**中新增:

import sys

reload(sys)

sys.setdefaultencoding('utf8') #gb2312,gbk

print sys.getdefaultencoding() # 輸出當前編碼

另乙個方案是在 python的lib\site-packages 資料夾下新建乙個sitecustomize.py 檔案(sitecustomize.pyis a special script; python will try to import it on startup, so any code in it will be run automatically.),輸入:

import sys

sys.setdefaultencoding('utf8')

這樣就能夠自動的設定編碼了。

ps:1. utf8的編碼是:utf-8

2. 測試已經成功的方法:

>>> import sys

>>> sys.getdefaultencoding()

Python 設定系統預設編碼

python在安裝時,預設的編碼是ascii,當程式中出現非ascii編碼時,python的處理常常會報這樣的錯unicodedecodeerror ascii codec can t decode byte 0x?in position 1 ordinal not in range 128 pyt...

Python 設定系統預設編碼

實際程式設計中必定要會遇到編碼問題。python在安裝時,預設的編碼是ascii,當程式中出現非ascii編碼時,python的處理常常會報這樣的錯unicodedecodeerror ascii codec can t decode byte 0x?in position 1 ordinal no...

Python 設定系統預設編碼

1.coding utf 8 作用是定義源 的編碼.如果沒有定義,此原始碼中是不可以包含中文字串的.pep 0263 defining python source code encodings 2.sys.getdefaultencoding 是設定預設的string的編碼格式 python在安裝時...