virtualenv虚拟环境创建失败-pip多版本共存问题

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

成功撒花!!!!!!!!!!








猜你喜欢

转载自blog.csdn.net/dashen180309/article/details/79494016