在 Python 中,我们可以利用虚拟环境(Virtual Environments)来办理该问题。
该条记将记录:在 Python 中,如何利用虚拟环境(Virtual Environments)来运行多个不同版本(且独立的)Python 环境,以办理多个项目须要不同版本 Python 环境的问题。
在 Python 中,虚拟环境(Virtual Environments)便是该问题的办理方案。在创建虚拟环境后,干系操作将发生在该环境中(这里“干系操作”是指与 Python 环境有关的操作,比如 pip install 将会将模块安装到该虚拟环境中,而不会影响系统环境),使得单个项目的运行环境与其它项目独立起来。

如下步骤,搭建虚拟环境:
# 第一步、安装 virtualenv 模块pip3 install virtualenv# 第二步、创建虚拟环境virtualenv --python=python3 "venv-example" # 实行该命令,将创建 ./venv-example 目录# 第三步、激活虚拟环境source venv-example/bin/activate # 实行该命令后,我们将进入虚拟环境# 第四步、实行操作# 与 Python 环境有关的所有操作将发生在该环境中# 比如,模块安装将安装到 venv-example 下的对应目录中,并在利用时从中加载模块。# 退出当前虚拟环境deactivate
2.2. virtualenvwrapper - 管理虚拟环境
利用 virtualenv 存在的一个问题是:为了运行不同运用,我们须要为每个运用单独创建虚拟环境。但是,很多运用须要的虚拟环境是相同的,这些完备运用可以共享虚拟环境。因此,我们可以写个工具,用于创建多个虚拟环境,并且能够在这些虚拟实行快速切换。
所幸,现在已经有了这个工具,利用 virtualenvwrapper 工具,便可办理该问题。在安装该工具后,通过命令 mkvirtualenv 将在“共享目录”中创建虚拟环境,通过命令 workon 快速加载特定虚拟环境,当然还有其他功能。
安装并利用 virtualenvwrapper 工具:
# 第一步、安装 virtualenv 模块pip3 install virtualenvwrapper# 第二步、创建干系环境变量export WORKON_HOME=~/Envs # “共享目录”,用于保存要共享的虚拟环境(该目录必须存在)source /usr/local/bin/virtualenvwrapper.sh# 第三步、创建虚拟环境mkvirtualenv env1 # 将创 $WORKON_HOME/env1 虚拟环境# 第四步、切换到虚拟环境workon env1# 常用虚拟环境操作lssitepackages # 查看已安装的虚拟环境lssitepackages -blssitepackages -lrmvirtualenv # 删除已安装的虚拟环境
3. 干系链接
python - What is the difference between venv, pyvenv, pyenv, virtualenv, virtualenvwrapper, pipenv, etc? - Stack Overflow(https://stackoverflow.com/questions/41573587/what-is-the-difference-between-venv-pyvenv-pyenv-virtualenv-virtualenvwrappe )
4. 参考文献Python中的虚拟环境的利用(https://www.cnblogs.com/kaishirenshi/p/11751738.html) Python 虚拟环境(https://www.jianshu.com/p/d8833799d934) Python 虚拟环境 virtualenv(https://www.cnblogs.com/zh605929205/p/7705192.html) virtualenvwrapper 5.0.1.dev2 — virtualenvwrapper 5.0.1.dev2 documentation(https://virtualenvwrapper.readthedocs.io/en/latest/ ) virtualenvwrapper - List all virtualenv - Stack Overflow(https://stackoverflow.com/questions/7212140/list-all-virtualenv ) python 3.x - How do I remove/delete a virtualenv? - Stack Overflow(https://stackoverflow.com/questions/11005457/how-do-i-remove-delete-a-virtualenv ) How to use Python virtualenv - PythonForBeginners.com(https://www.pythonforbeginners.com/basics/how-to-use-python-virtualenv )