解决UnicodeDecodeError: 'ascii' code can't decode byte 0xef in position

今天在使用python的pip安装的时候出现了这个错误
UnicodeDecodeError: ‘ascii’ code can’t decode byte 0xef in position 7: ordinal
not in range(128)
这里写图片描述

看起来又是编码的问题,在v2ex上找到了解决方案:
http://www.v2ex.com/t/90659

burgleaf 2013-11-26 21:58:02 +08:00 ♥ 5
@c19 灰常感谢!原因是pip安装python包会加载我的用户目录,我的用户目录恰好是中文的,ascii不能编码。解决办法是:
python目录 Python27\Lib\site-packages 建一个文件sitecustomize.py
内容写:
import sys
sys.setdefaultencoding(‘gb2312’)
python会自动运行这个文件。

所以解决方案是:
在Python27\Lib\site-packages 建一个文件:sitecustomize.py
内容写:

import sys
sys.setdefaultencoding('gb2312')

sys.setdefaultencoding是python设置系统默认编码,大家可以在这里试试gbk也行
python会在下次自动运行这个文件。
现在再运行pip命令就可以了

这里写图片描述

posted @ 2016-04-15 14:14  voidsky  阅读(297)  评论(0编辑  收藏  举报