Date Tags Python

当python中间处理非ASCII编码时,经常会出现如下错误:

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

0x??是超出128的数字,python在默认的情况下认为语言的编码是ascii编码,所以无法处理其他编码,需要设置python的默认编码为所需要的编码。

解决的方案1

import sys

reload(sys)
sys.setdefaultencoding('utf-8')

解决的方案2

另一个方案是在python的Lib\site-packages文件夹下新建一个sitecustomize.py 文件, 内容如下

import sys
sys.setdefaultencoding('utf-8')

这样就能够自动的设置编码了。

测试已经成功的方法

>>> import sys
>>> sys.getdefaultencoding()