Python报错问题解决

本文记录个人在使用Python当中遇到的报错信息以及解决方案:

Python 的中文编码处理

今天使用脚本的交互只是命令行 + 日志,但是遇到如下输出报错信息:

UnicodeEncodeError: 'ascii' codec can't encode character u'\u2588' in position 0: ordinal not in range(128)

查询发现是编码问题,最快的解决方案如下(一次性修改后永久生效):

在python的lib\site-packages文件夹下新建一个sitecustomize.py find / -name site-packages

/usr/local/lib/python2.7/site-packages
/usr/lib/pypy/lib-python/2.7/site-packages

cd /usr/local/lib/python2.7/site-packages

vim sitecustomize.py #添加如下内容,设置编码为utf8

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

此时重启python解释器,执行sys.getdefaultencoding(),发现编码已经被设置为utf8.

实际测试将以上内容添加到自己的py文件效果最好!

参考:

python报错问题解决:‘ascii’ codec can’t encode character

也谈 Python 的中文编码处理

Licensed under CC BY-NC-SA 4.0
最后更新于 Feb 22, 2017 17:58 UTC