Python虚拟环境 之 virtualenv安装、创建、激活、关闭

本文介绍了Python开发中如何使用virtualenv和venv创建与管理虚拟环境,确保不同项目间库的隔离。通过安装virtualenv,创建不含系统包的纯净环境,然后激活和关闭虚拟环境。venv是Python3.3后的内置模块,创建和操作方式类似。使用虚拟环境可以避免项目间依赖冲突,确保开发环境的一致性。
摘要由CSDN通过智能技术生成

目录

Python虚拟环境

1、virtualenv

2、安装Virtualenv

3、创建virtualenv

4、激活virtualenv

5、关闭virtualenv

6、venv


Python虚拟环境

在开发python应用程序的时候,系统安装的python3只有一个版本:3.4。所有的第三方的包都回被pip安装到python3的site-packages目录下。

如果我们要要同时开发多个应用程序,那这些应用都共用一个python,就是安装在系统的python3。如果应用A需要jinja 2.7,而应用B需要jinja 2.6怎么办?

这种情况下,每个应用需要各自拥有一套“独立”的python运行环境。

有两个常用工具用于创建python“独立”环境:

  • venv is available by default      in Python 3.3 and later, and installs pip and setuptools into created      virtual environments in Python 3.4 and later.
  • virtualenv needs to be    installed separately, but supports Python 2.7+ and Python 3.3+, and pip,      setuptools and wheel are always installed into created virtual      environments by default (regardless of Python version). 

1、virtualenv

https://virtualenv.readthedocs.io/en/latest/

virtualenv is a tool to create isolated Python environments.

创建一个拥有自己安装目录的环境, 这个环境不与其他虚拟环境共享库, 能够方便的管理python版本和管理python库

2、安装Virtualenv

$ pip install virtualenv

3、创建virtualenv

假定我们要开发一个新的项目,需要一套独立的python运行环境,可以这么做:

- 在项目目录下,创建一个独立的python运行环境,命名为 venv

virtualenv venv #创建一个名为ENV的目录, 并且安装了ENV/bin/python,创建了lib,include,bin目录,安装了pip

  • lib,所有安装的python库都会放在这个目录中的lib/pythonx.x/site-packages/下
  • bin,bin/python是在当前环境是使用的python解释器

如果在命令行中运行virtualenv --system-site-packages ENV, 会继承/usr/lib/python2.7/site-packages下的所有库, 最新版本virtualenv把访问全局site-packages作为默认行为default behavior.

virtualenv --no-site-packages venv

加上了参数--no-site-packages,这样,已经安装到系统python环境中的所有第三方包都不会复制过来,这样,我们就得到了一个不带任何第三方包的“干净”的pyhton运行环境。

可以使用-p PYTHON_EXE选项在创建虚拟环境的时候指定python版本

  • #创建python2.7虚拟环境
  • virtualenv -p /usr/bin/python2.7 ENV2.7
  • #创建python3.4虚拟环境
  • virtualenv -p /usr/local/bin/python3.4 ENV3.4

4、激活virtualenv

新建的python环境被放到项目录下的venv目录,有了 venv 这个python环境,就可以用source进入该环境:

source ./venv/bin/activate

source ./venv/Scripts/activate

注意查看activate命令被放在了哪个目录下。

执行上面的命令后,可以看懂命令指示符变了,有个 (venv) 前缀,表示当前环境是一个名为 venv 的python环境,下面可以正常安装各种第三方包,并运行python命令。

在venv 环境下,用 pip 安装的包都在安装到了 venv 这个环境下,系统python环境不受任何影响,也就是说, venv环境是专门针对当前项目创建的。

5、关闭virtualenv

退出venv 环境,使用 deactivate 命令:deactivate 

viratualenv是如何创建“独立”的python运行环境呢?

其实就是把系统python复制一份到virtualenv的环境,用命令 source 进入一个virutalenv环境时,virtualenv会修改相关环节变量,让命令python和pip均指向当前的virtualenv环境。 

6、venv

venv不用安装,不过需要python3.3以上。创建一个独立的python运行环境,命名为venv

python3 -m venv ./venv

上面的命令会在当前目录下创建一个名为venv的python环境中。进入和退出该环境的方式和virtualenv一致。

参考文档:

https://packaging.python.org/tutorials/installing-packages/#creating-virtual-environments 官方文档 

  • 11
    点赞
  • 28
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

濯一一

你的鼓励:我最大的动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值