Python2.7 pip UnicodeEncodeError: 'ascii' codec can't encode characters in position 6-10: ordinal not in range(128)
错误信息
File "C:\Users\HPCM\Envs\test27\lib\site-packages\pip\_internal\cli\progress_bars.py", line 172, in iter self.next(len(x)) # noqa: B305 File "C:\Users\HPCM\Envs\test27\lib\site-packages\pip\_vendor\progress\__init__.py", line 120, in next self.update() File "C:\Users\HPCM\Envs\test27\lib\site-packages\pip\_vendor\progress\bar.py", line 83, in update self.writeln(line) File "C:\Users\HPCM\Envs\test27\lib\site-packages\pip\_vendor\progress\__init__.py", line 102, in writeln print(line, end='', file=self.file) File "C:\Users\HPCM\Envs\test27\lib\site-packages\pip\_vendor\colorama\ansitowin32.py", line 162, in write self.write_and_convert(text) File "C:\Users\HPCM\Envs\test27\lib\site-packages\pip\_vendor\colorama\ansitowin32.py", line 190, in write_and_convert self.write_plain_text(text, cursor, len(text)) File "C:\Users\HPCM\Envs\test27\lib\site-packages\pip\_vendor\colorama\ansitowin32.py", line 195, in write_plain_text self.wrapped.write(text[start:end]) UnicodeEncodeError: 'ascii' codec can't encode characters in position 6-10: ordinal not in range(128)
由于编码问题导致异常抛出, 是平台而定修改编码集即可. 首先找到报错文件位置
C:\Users\HPCM\Envs\test27\lib\site-packages\pip\_vendor\colorama\ansitowin32.py
在导包之后增加
import sys reload(sys) sys.setdefaultencoding("gbk") # 我这是使用的是windows系统, 编码集为gbk