Flask初学者卡死在创建虚拟环境的起跑线上。气急败坏地找了n篇博客。
最终找到了一个大神的解决方案。点击打开链接
简单整理如下:
起初创建虚拟环境失败,错误代码如下:
Not overwriting existing python script /home/python/.virtualenvs/flask_py/bin/python (you must use /home/python/.virtualenvs/flask_py/bin/python3)
requests.packages.urllib3.exceptions.NewConnectionError: <requests.packages.urllib3.connection.VerifiedHTTPSConnection object at 0x7f1d66475ac8>: Failed to establish a new connection: [Errno 101] 网络不可达
TypeError: unsupported operand type(s) for -=: 'Retry' and 'int'
...Installing setuptools, pkg_resources, pip, wheel...done.
Traceback (most recent call last):
File "/usr/lib/python3/dist-packages/virtualenv.py", line 2363, in <module>
main()
File "/usr/lib/python3/dist-packages/virtualenv.py", line 719, in main
symlink=options.symlink)
File "/usr/lib/python3/dist-packages/virtualenv.py", line 988, in create_environment
download=download,
File "/usr/lib/python3/dist-packages/virtualenv.py", line 918, in install_wheel
call_subprocess(cmd, show_stdout=False, extra_env=env, stdin=SCRIPT)
File "/usr/lib/python3/dist-packages/virtualenv.py", line 812, in call_subprocess
% (cmd_desc, proc.returncode))
OSError: Command /home/python/venv/bin/python3.5 - setuptools pkg_resources pip wheel failed with error code 2
Error in sys.excepthook:
Traceback (most recent call last):
File "/usr/lib/python3/dist-packages/apport_python_hook.py", line 63, in apport_excepthook
from apport.fileutils import likely_packaged, get_recent_crashes
ImportError: No module named 'apport'
Original exception was:
Traceback (most recent call last):
File "/usr/lib/python3/dist-packages/virtualenv.py", line 2363, in <module>
main()
File "/usr/lib/python3/dist-packages/virtualenv.py", line 719, in main
symlink=options.symlink)
File "/usr/lib/python3/dist-packages/virtualenv.py", line 988, in create_environment
download=download,
File "/usr/lib/python3/dist-packages/virtualenv.py", line 918, in install_wheel
call_subprocess(cmd, show_stdout=False, extra_env=env, stdin=SCRIPT)
File "/usr/lib/python3/dist-packages/virtualenv.py", line 812, in call_subprocess
% (cmd_desc, proc.returncode))
OSError: Command /home/python/venv/bin/python3.5 - setuptools pkg_resources pip wheel failed with error code 2
多个pip版本共存与切换的问题
# 查看pip默认版本
pip -V
pip 9.0.1 from /usr/local/lib/python2.7/dist-packages (python 2.7) # 如图python2的pip默认版本为9.0.1
接下来查看pip3是否可以正常使用
pip3 ——V
pip 8.1.2 from /usr/local/lib/python3.5/dist-packages (python 3.5) # 如图python3的pip默认版本为8.1.2,系统会提示可升级
升级pip(如果是python2不能使用下面改成Python2)
sudo python3 -m pip install -U pip
如果没写sudo会提示报错:
PermissionError: [Errno 13] 权限不够: '/usr/local/bin/pip'
顺利安装完成后,查看能否正常运行
pip3 -V
再次创建虚拟环境
mkvirtualenv flask_py
Running virtualenv with interpreter /home/python/.virtualenvs/flask_py/bin/python2
Using real prefix '/usr'
New python executable in /home/python/.virtualenvs/flask2_py/bin/python2
Also creating executable in /home/python/.virtualenvs/flask2_py/bin/python
Installing setuptools, pkg_resources, pip, wheel...done.
virtualenvwrapper.user_scripts creating /home/python/.virtualenvs/flask2_py/bin/predeactivate
virtualenvwrapper.user_scripts creating /home/python/.virtualenvs/flask2_py/bin/postdeactivate
virtualenvwrapper.user_scripts creating /home/python/.virtualenvs/flask2_py/bin/preactivate
virtualenvwrapper.user_scripts creating /home/python/.virtualenvs/flask2_py/bin/postactivate
virtualenvwrapper.user_scripts creating /home/python/.virtualenvs/flask2_py/bin/get_env_details
成功撒花!!!!!!!!!!