1. 什么是Python虚拟环境?
虚拟环境是Python中一个重要的概念。它可以让你在同一台机器上运行多个相互独立、不相互干扰的Python环境。
假设你的项目P1依赖于A框架的1.0版本,在Python2.7下运行;而你的项目P2又依赖于A框架的2.0版本,在Python3.5下运行。如果你将它们安装在同一个Python环境中,那么你就要为其中一个项目降低Python版本,或者要求A框架的版本必须相同。
使用虚拟环境,你就可以在同一台机器上同时安装Python2.7和Python3.5,并为每个项目创建一个独立的虚拟环境。这样,项目P1就可以在Python2.7下运行,而项目P2可以在Python3.5下运行,它们互相不会干扰。
2. 安装虚拟环境
2.1 安装虚拟环境工具
Python3.3及新版本自带了venv模块,可以不用安装。如果你使用的Python版本低于3.3,则需要使用虚拟环境工具。
其中,virtualenv是比较流行的一个虚拟环境工具,可以使用pip命令进行安装:
pip install virtualenv
2.2 创建虚拟环境
使用virtualenv创建虚拟环境的命令如下:
virtualenv [虚拟环境的路径]
例如,我们要在当前目录下创建一个名为myenv的虚拟环境,则可以使用以下命令:
virtualenv myenv
这样,就在当前目录下创建了一个myenv文件夹,里面包含了Python运行环境和一些必要的库。
3. 激活与退出虚拟环境
3.1 激活虚拟环境
使用以下命令可以激活虚拟环境:
source [虚拟环境的路径]/bin/activate
其中,虚拟环境的路径为创建虚拟环境时指定的路径。例如,在Linux系统下,如果我们在当前目录下创建了一个myenv虚拟环境,则可以使用以下命令激活虚拟环境:
source myenv/bin/activate
激活虚拟环境后,终端显示的命令提示符会发生变化,显示当前所使用的虚拟环境。
3.2 退出虚拟环境
在虚拟环境中,使用以下命令可以退出虚拟环境:
deactivate
4. 虚拟环境中的操作命令
4.1 安装包
在虚拟环境中,使用pip命令可以安装Python包。例如,我们要安装numpy包,可以使用以下命令:
pip install numpy
如果你需要安装特定版本的包,则可以指定版本号:
pip install numpy==1.18.1
在安装包时,如果需要从源代码进行安装,则可以使用以下命令:
pip install [包名] -e [源代码路径]
4.2 查看已安装的包
在虚拟环境中,使用pip命令可以查看已安装的Python包。例如,我们要查看已安装的numpy包的版本号,则可以使用以下命令:
pip show numpy
4.3 导出虚拟环境中已安装的包信息
在虚拟环境中,我们可以将已安装的包信息导出至一个文件,方便在其他环境中安装相同的包。例如,我们要将虚拟环境中已安装的包信息导出至一个名为requirements.txt的文件,则可以使用以下命令:
pip freeze > requirements.txt
这样,就会在当前目录下生成一个名为requirements.txt的文件,其中包含了已安装的包的名称和版本号。
4.4 从requirements.txt文件安装包
在其他环境中,我们可以使用pip命令根据requirements.txt文件安装相同的包。例如,我们要根据名为requirements.txt的文件安装包,则可以使用以下命令:
pip install -r requirements.txt
这样,就会根据requirements.txt文件中的内容安装相应的Python包。
5. 删除虚拟环境
如果你不再需要某个虚拟环境,可以使用以下命令删除它:
rm -r [虚拟环境的路径]
其中,虚拟环境的路径为创建虚拟环境时指定的路径。例如,如果我们要删除当前目录下的myenv虚拟环境,则可以使用以下命令:
rm -r myenv
6. 总结
Python虚拟环境是一个重要的概念,通过虚拟环境,我们可以在同一台机器上运行多个相互独立、不相互干扰的Python环境。本文介绍了虚拟环境的安装、激活、退出、操作命令等内容,希望能对使用Python的开发者有所帮助。