Python虚拟环境 之 virtualenv安装、创建、激活、关闭
目录
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 官方文档
Python虚拟环境 之 virtualenv安装、创建、激活、关闭相关推荐
- windows安装python虚拟环境_windows上安装python虚拟环境
一.windows上安装python虚拟环境 1.安装 pip install virtualenv virtualenv --version 2.新建一个python虚拟环境virtual_env_ ...
- ubuntu18.04安装python虚拟环境:virtualenv 【亲测有效】
安装目的,就是为了便于工程管理. 前提,安装一下python3.6.看这个教程会更加方便. 1.安装虚拟环境 sudo pip3 install virtualenv 2.安装虚拟环境扩展 ...
- python虚拟环境virualenv的安装与使用
virtualenv 是一个创建隔绝的Python环境的工具.virtualenv创建一个包含所有必要的可执行文件的文件夹,用来使用Python工程所需的包. 在安装完python及pip,setup ...
- Python 虚拟环境:Virtualenv
virtualenv是用于创建独立的Python环境的模块,并且多个Python相互独立,互不影响,它能够: 1. 在没有权限的情况下安装新套件 2. 不同应用可以使用不同的套件版本 3. 套件升级不 ...
- linux python虚拟环境搭建_Linux 下创建python 虚拟环境
简要记录 Linux 下安装python虚拟环境的方法.以下内容基于 python2.7 版本 1 安装virtualenv pip install virtualenv 检查版本 virtualen ...
- python中使用virtualenv库创建虚拟环境的问题
书籍<python编程--从入门到实践> 问题:创建虚拟环境不成功 代码示例如下: C:\Users\我们都是小怪兽\Desktop>virtualenv myenv New pyt ...
- 如何安装python虚拟环境_如何安装python3.9以及python虚拟环境?
一:Python3.9安装 1. 配置依赖环境 sudo apt-get install libffi-dev zlib1g-dev libbz2-dev libssl-dev libncurses5 ...
- python创建虚拟环境的方法_Python创建virtualenv(虚拟环境)方法
本文目录 一 前言 二 通过virtualenv软件创建 三 在pycharm下创建 新建项目 四 已有项目使用和创建虚拟环境 五 参数说明 一 前言 需求: --公司之有一台服务器 -目前运行这一个 ...
- Python笔记-centos 7安装(升级)pyton到3.6.9及创建独立虚拟环境
首先下载python3.6.9 wget http://npm.taobao.org/mirrors/python/3.6.9/Python-3.6.9.tgz 解压 tar -zxvf Python ...
最新文章
- c/c++中的const
- open source ecg_苹果watchOS 7.1 正式版发布:ECG功能上线多国
- caffe学习(1) ubunu 16.04+caffe+cuda8.0+opencv3.1安装
- Java学习进阶—高级编程
- download在线下载源码
- word修改一处另一处自动修改_这么做让word自动记录修改明细,再也不用一个字一个字的核对了...
- 【第二十九章】 springboot + zipkin + mysql
- element 使用阿里图标变形了_2TB不限速的阿里网盘App来了 终于不再忍受众生平等盘...
- 一文看懂二叉搜索树~(又叫二叉查找树) 代码+详解(C/C++)
- Android+FFmpeg音视频学习笔记
- cpu空载50度,大热天,cpu都上50度了! -
- for(int x:nums),在循环中改变nums元素的情况
- 差错控制 —— 码距和纠错编码(海明码)
- 3D结构光摄像头深度算法 转载
- 软件与硬件的兼容性如何测试,怎么检测电脑硬件兼容问题
- 树莓派系统剪裁、克隆
- 全球与中国体积视频软件市场深度研究分析报告
- 计算机英语 crash,英语笑话 - 技术类:455 Computer Crash 电脑崩溃
- linux 端如何修改移动硬盘的名称
- 【FPGA】SCCB通信协议