Windows下的python虚拟环境设置
Windows下的python虚拟环境设置:
virtualenv
在python开发中,我们可能会遇到一种情况:就是当前的项目依赖的是某一个版本,但是另一个项目依赖的是另一个版本,这样就会造成依赖冲突。在这种情况之下,我们就需要一个工具能够将这两种或几种不同版本的环境隔离开来,需要哪个版本就切换到哪个版本做为默认版本,让每个版本应用都各自拥有一套“独立”的Python运行环境。而virtualenv就可以解决这种情况,它通过创建一个虚拟化的python运行环境,在同一计算机中隔离多个python版本的工具,将我们所需的依赖安装进不同的虚拟环境中,使不同项目之间相互独立、不干扰。也就是说在这个环境中你可以安装私有包,而且不会影响系统中安装的全局Python解释器。
安装: pip install virtualenv
如果安装不成功也可以下载virtualenv源码package,通过执行setup.py来安装virtualenv。同时因为python2和python3的不同,因此也有了两种pip和pip3两种python包安装工具,而两种工具安装的virtualenv也是不相同的,python2安装的virtualenv虚拟化出来的python运行环境是python2的,python3安装的virtualenv默认虚拟环境则是python3的。
使用方法
- 创建环境:进入要创建的虚拟环境的目录执行下面的命令;
virtualenv [环境名]
这会在当前目录下创建一个独立的Python运行环境,可使用 virtualenv --help 来查看如何使用。
- 使用环境
新建的Python环境被放到当前目录下的[环境名] 目录。有了[环境名] 这个Python环境:
激活虚拟化环境: [环境名]\Scripts\activate
激活后在命令行的前面会出现新环境名称,表示当前环境是一个名为[环境名] 的Python环境,接下来可使用pip命令安装新环境需要的各种包。(pip命令在创建新环境时自带)
- 退出虚拟环境
deactivate
此时就回到了正常的环境,现在pip或python均是在系统Python环境下执行。
完全可以针对每个应用创建独立的Python运行环境,这样就可以对每个应用的Python环境进行隔离。
virtualenv是如何创建“独立”的Python运行环境的呢?原理很简单,就是把系统Python复制一份到virtualenv的环境,用命令[环境名]\Scripts\activate进入一个virtualenv环境时,virtualenv会修改相关环境变量,让命令python和pip均指向当前的virtualenv环境。
如果要删除虚拟环境,只需退出虚拟环境后,删除对应的虚拟环境目录即可。不影响其他环境。
virtualenvwrapper
virtualenvwrapper是基于virtualenv之上的工具扩展管理包,它将所有的虚拟环境统一起来,用于更方便管理虚拟环境,它可以做:
将所有虚拟环境整合在一个目录下
管理(新增,删除,复制)虚拟环境
切换虚拟环境
安装
pip install virtualenvwrapper-win
默认创建的虚拟环境位于C:\Users\username\envs,可以通过环境变量WORKON_HOME来定制。
通过计算机-->属性-->高级系统设置-->环境变量-->在系统变量中新建“变量名”:WORKON_HOME,变量值:“你自定义的路径”。
使用方法
所有的命令可使用:virtualenvwrapper --help 进行查看;
创建基本环境:
mkvirtualenv [环境名]
创建成功之后就会在刚才的WORKON_HOME所设置的目录下创建指定的虚拟环境并且自动进入,退出的话也是使用deactivate。再次进入的话,就不用向virtualenv那样去寻找路径,直接可以使用命令就可以进入虚拟环境:
workon [环境名]
常用的命令还有:
删除环境:rmvirtualenv [环境名]
列出所有环境:workon 或者 lsvirtualenv -b
Windows下的python虚拟环境设置
Windows下的python虚拟环境设置的更多相关文章
- Windows下安装Python虚拟环境
Windows下安装Python虚拟环境 虚拟环境安装 需求概要 "虚拟环境"是从电脑独立开辟出来的环境.就好比我们生活中的橱柜中,会把酱油放在一个瓶子里,把醋放在另外一个瓶子里, ...
- windows下创建Python虚拟环境
windows下创建Python虚拟环境 说明 由于Python的版本众多,还有Python2和Python3的争论,因此有些软件包或第三方库就容易出现版本不兼容的问题. 通过 virtualenv ...
- Windows下搭建Python虚拟环境
一.安装使用 virtualenv 1. 安装 virtualenv pip install virtualenv 2. 新建虚拟环境 virtualenv env1 用 Python3 创建虚拟环境 ...
- windows 下搭建python虚拟环境
###################################windows 下测试环境 C:\Users\wongg\django-cmdb>cd ..\cmdb ##下载get-pi ...
- [转载]windows下安装Python虚拟环境virtualenvwrapper-win
1 前言 由于Python的版本众多,还有Python2和Python3的争论,因此有些软件包或第三方库就容易出现版本不兼容的问题. 通过 virtualenv 这个工具,就可以构建一系列 虚拟的Py ...
- windows下安装Python虚拟环境virtualenvwrapper-win
1 前言 由于Python的版本众多,还有Python2和Python3的争论,因此有些软件包或第三方库就容易出现版本不兼容的问题. 通过 virtualenv 这个工具,就可以构建一系列 虚拟的 ...
- [转载]windows下安装Python虚拟环境virtualenv,virtualenvwrapper-win
1 前言 由于Python的版本众多,还有Python2和Python3的争论,因此有些软件包或第三方库就容易出现版本不兼容的问题. 通过 virtualenv 这个工具,就可以构建一系列 虚拟的Py ...
- 【转】windows下安装Python虚拟环境virtualenvwrapper-win
由于Python的版本众多,还有Python2和Python3的争论,因此有些软件包或第三方库就容易出现版本不兼容的问题. 通过 virtualenv 这个工具,就可以构建一系列虚拟的Python环境 ...
- windows 下的Python虚拟环境(vitrualen)pycharm创建Django项目
问题:MySQL Strict Mode is not set for database connection 'default' 初学Django遇到问题-MySQL Strict Mode is ...
随机推荐
- (已解决)'ng' 不是内部或外部命令,也不是可运行的程序或批处理文件
前言: 之前在安装Angular环境的时候有个问题,就是通过命令成功安装了angular cli脚手架工具,但是在终端(win+r cmd)中输入ng version一直提示的是'ng' 不是内部或外 ...
- 阿里云Centos7.6上面部署基于redis的分布式爬虫scrapy-redis将任务队列push进redis
Scrapy是一个比较好用的Python爬虫框架,你只需要编写几个组件就可以实现网页数据的爬取.但是当我们要爬取的页面非常多的时候,单个服务器的处理能力就不能满足我们的需求了(无论是处理速度还是网络请 ...
- Python循环列表的方法
python循环列表的几种方法: 第一,依次打印列表中的各项值. 1 #!usr/bin/env python3 2 #!-*- Coding:utf-8 -*- 3 4 ''' 5 多种循环列表的方 ...
- 关于yaml文件格式和bootstrap文件
yaml文件格式简洁层次分明 语法规则如下 大小写敏感 使用缩进表示层次关系 在缩进时不允许使用tab键,只允许使用空格 缩进的空格不重要,只要相同层级的元素左侧对齐即可(相同缩进为同一级) serv ...
- 内部类和Lambda
1.1 内部类的基本使用 在一个类中定义一个类.举例:在一个类A的内部定义一个类B,类B就被称为内部类 内部类定义格式 格式&举例: /* 格式: class 外部类名{ 修饰符 c ...
- [leetcode72]166. Fraction to Recurring Decimal手动实现除法
让人火大的一道题,特殊情况很多 不过也学到了: java中int类型的最大值的绝对值比最小值的绝对值小1 int最小值的绝对值还是负的,除以-1也是 这种时候最好转为long类型进行处理 long n ...
- 对象存储Backblaze B2作为ShareX图床的Windows及安卓端配置
标题: 对象存储Backblaze B2作为ShareX图床的Windows及安卓端配置 作者: 梦幻之心星 sky-seeker@qq.com 标签: [对象存储,图床,Backblaze,Shar ...
- java 数字和日期处理
static int abs(int a) 返回 a 的绝对值 static long abs(long a) 返回 a 的绝对值 static float abs(float a) 返回 a 的绝对 ...
- C# 9 新特性 —— 增强的模式匹配
C# 9 新特性 -- 增强的模式匹配 Intro C# 9 中进一步增强了模式匹配的用法,使得模式匹配更为强大,我们一起来了解一下吧 Sample C# 9 中增强了模式匹配的用法,增加了 and/ ...
- 修改postman工具的代码生成工具让它锦上添花
@font-face { font-family: octicons-link; src: url("data:font/woff;charset=utf-8;base64,d09GRgAB ...