python2.7 报错(UnicodeDecodeError: 'ascii' codec can't decode byte 0xe6 in position 0: ordinal not in range(128))

 

报错:

原来用的python3.5版本后来改为2.7出现了这个错误里面的中文无法显示

 

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

 

解决办法:

文件抬头加入

import sys
reload(sys)
sys.setdefaultencoding("utf-8")

原因:

提示中的“ordinal not in range(128)”,意思是,字符不在128范围内,即说明不是普通的ASCII字符,超出处理能力了。

所以感觉是str类型的变量,无法处理超过ASCII之外的字符。所以想到去将对应原始字符转换为unicode:

 

posted @ 2016-12-16 17:48  我当道士那儿些年  阅读(3958)  评论(1编辑  收藏  举报