Last Updated on
概述
Python的强大,很大程度是因为第三方库的丰富和强大而强大。所以在python项目中,常常会使用到众多第三方库,不同的项目对库的依赖不同,版本也不同,那怎么样能让不同的项目在同样的系统环境中互不干扰的运行,那就是虚拟环境。
可以说虚拟环境是Python开发中必须要了解学会的!
虚拟环境会根据本地Python创建一个类似隔离的单独的python环境。在这里个虚拟环境中,可以下载单独属于这个环境中的库,且不会影响原有系统的Python环境。
简单的说,就是一个隔离的虚拟出来的python环境。
下面详细说一下,在centos服务器上如何创建使用python虚拟环境。
创建虚拟环境
虚拟环境的创建,Python2和Python3不太一样,因为Python3已经内置了一个虚拟环境的库,可以直接创建虚拟环境,而Python2需要使用第三方库。
下面就两个版本,分别说一下如何创建虚拟环境:
Python2
Python2创建虚拟环境需要依赖virtualenv
库。
# 下载virtualenv库
$ pip install virtualenv
# 使用virtualenv创建虚拟环境,venv为创建的虚拟环境文件夹名称,可自定义。
$ virtualenv venv
Python3
Python3已经内置虚拟环境库venv,不需要下载别的第三方库就可以直接创建虚拟环境:
# 创建虚拟环境,第二个venv是虚拟环境文件夹名称,可自定义
$ python3 -m venv venv
使用说明
如上,创建了虚拟环境,生成了venv文件夹。
其中文件如下:
然后就可以通过source命令,进入虚拟环境:
# 进入虚拟环境,在venv的bin目录下有activate文件,source此文件进入虚拟环境。
$ source venv/bin/activate
进入虚拟环境后,在命令行前面,会发现有个(venv)的显示,表示已经处在此虚拟环境中,如下图:
这样直接在命令行中运行python相关的命令就会直接是使用虚拟环境中的python,在创建了虚拟环境后,默认虚拟环境已经存在如下几个默认基础库:
然后就可以在此虚拟环境中,使用pip下载库,下载库会自动保存在venv文件夹中。你会发现直接运行的命令实际上就是指向了venv文件夹中的可执行文件:
所以即使不使用source进入虚拟环境,直接运行虚拟环境venv中的python文件也是一样的。
包括一下需要执行的第三方库,如常用的pip,django,django等库的执行文件,也会在venv/bin/
目录下,直接执行此中的文件,也会相应的使用此虚拟环境。
在用source进入环境后,使用如下命令退出虚拟环境:
# 退出虚拟环境
$ deactivate
删除虚拟环境
要删除虚拟环境,只需要删除创建虚拟环境生成的文件夹即可,如上面就是直接删除掉venv文件夹即可。
因为所有相关文件和依赖包都是存储在此文件夹中的。所以管理非常方便。
结束
ok,虚拟环境就介绍到这,在Python开发中,这是基础必须的,因为在生产环境中运行Python程序,为了不影响系统环境,都是会使用虚拟环境的。
有什么问题,欢迎留言