转自:http://techpool.iteye.com/category/102573?show_full=true
出现错误:
UnicodeDecodeError: 'ascii' codec can't decode byte 0xe6 in position 2: ordinal not in range(128)
分清encode和decode。str --> decode(c) --> unicode, unicode --> encode(c) --> str,其中编码类型c必须相同。
如:s = s1 + s2
当s1的编码与s2的编码不一致时,如s1的type为string,而s2的type为unicode,就会出现如上的错误
脚本内有中文时,报错UnicodeEncodeError: 'ascii' codec can't encode characters in position 0-6: ordinal not in range(128)
可在
模块中加入以下代码解决
import sys
reload(sys)
sys.setdefaultencoding("utf-8")