安装好 Python2.7 后,使用 pip 安装 numpy 时报了如下错误:
Exception:
Traceback (most recent call last):
File "d:\program files\python\python27\lib\site-packages\pip\basecommand.py", line 215, in main
status = self.run(options, args)
File "d:\program files\python\python27\lib\site-packages\pip\commands\install.py", line 324, in run
requirement_set.prepare_files(finder)
File "d:\program files\python\python27\lib\site-packages\pip\req\req_set.py", line 380, in prepare_files
ignore_dependencies=self.ignore_dependencies))
File "d:\program files\python\python27\lib\site-packages\pip\req\req_set.py", line 620, in _prepare_file
session=self.session, hashes=hashes)
File "d:\program files\python\python27\lib\site-packages\pip\download.py", line 821, in unpack_url
hashes=hashes
File "d:\program files\python\python27\lib\site-packages\pip\download.py", line 659, in unpack_http_url
hashes)
File "d:\program files\python\python27\lib\site-packages\pip\download.py", line 880, in _download_http_url
file_path = os.path.join(temp_dir, filename)
File "d:\program files\python\python27\lib\ntpath.py", line 85, in join
result_path = result_path + p_path
UnicodeDecodeError: 'ascii' codec can't decode byte 0xb1 in position 7: ordinal not in range(128)
使用pip安装python包会加载用户目录,如果目录中存在中文,ascii编码时会报错。
解决办法:python目录 Python27\Lib\site-packages 建一个文件sitecustomize.py
里面写:
import sys
sys.setdefaultencoding('gb2312')
然后在重新运行 pip numpy