python安装pip遇到UnicodeDecodeError的解法

问题

这几天因为个人原因需要安装python2.7版本,结果在后续安装pip的时候遇到了相当大的麻烦:

安装报错

  • UnicodeDecodeError: ‘ascii’ codec can’t decode byte 0xce in position 11: ordinal not in range(128)

其实这个报错很容易看懂,就是解码出现了问题。本质是因为按照我们的习惯,自己windows的用户名都是命名为中文的,例如我的用户名就是自己的名字。那么在安装python2.7的时候,哪怕安装目录是英文的,一些自动放在user目录下的文件也是中文名路径的,于是出现了解码错误。我找到了一个解决办法,但对我个人无效,贴在下面:

解决方法1

pip安装报错UnicodeDecodeError

简单来说就是给python安装目录 Python27\Lib中的mimetypes.py文件的import下添加如下三行代码:

if sys.getdefaultencoding() != 'gbk': 
 reload(sys) 
 sys.setdefaultencoding('gbk')

但是我添加以后该报错还报错,没什么作用。
也许对python3.x的版本是可以这样解决问题的吧,但是我要安装的2.7似乎不能这么解决问题。我看到确实也有一些朋友遇到了和我一样的烦恼,所以给出更绝的可以解决问题的办法:

解决方法2

修改自己的windows用户名,改成英文的用户名,再重新安装

关于修改用户名,在这篇文章里面说的很清楚了,我贴出来并做一点点补充:

win10修改中文用户名

原文说的很清楚了,但是很多朋友和我一样在步骤4修改user文件夹名字的时候遇到了问题。不能修改文件夹名称。
这是因为我们打开了一些应用程序,而这些程序含有user名称的句柄。可以打开任务管理器->性能->打开资源监视器->CPU->关联的句柄中搜索句柄。搜索自己的用户名,然后kill掉相关进程即可。
就那我自己的情况来说,原来是为了保证步骤不出错,打开了chrome来确认步骤,结果关闭了chrome就可以顺利改变文件夹名称了。

你可能感兴趣的:(安装环境遇到的问题,python,pip)