您的位置:首页 > 其它

解决UnicodeEncodeError: 'ascii' codec can't encode characters in position 0-11

2017-01-07 16:34 453 查看
原文链接:这里写链接内容

在windows下写的python脚本,放到linux下运行,直接报

UnicodeEncodeError: ‘ascii’ codec can’t encode characters in position 0-11: ordinal not in range(128)

原因是python2.7在安装时,默认的编码是ascii,当程序中出现非ascii编码时,python的处理常常会报这样的错,不过在python3就不会有这样的问题。

临时解决方法:

代码中加入如下三行

import sys
reload(sys)
sys.setdefaultencoding('utf8')


如果不想在每个文件中都加这三行,就在python的Lib\site-packages文件夹下新建一个sitecustomize.py

内容如下:

#encoding=utf8
import sys reload(sys) sys.setdefaultencoding('utf8')


这样的话,系统在python启动的时候,自行调用该文件,设置系统的默认编码
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐