拖拖拉拉的毛病还是依旧如初。。。

断断续续坚持三天总算把虚拟环境管理部分的内容给看完了。

对三天的知识点进行梳理,方便以后回顾。

①虚拟环境安装

用pip install + 包名的方式安装,涉及到的包有:virtualenv、virtualenvwrapper-win、pipenv

②virtualenv的安装和应用

1.pip安装virtualenv

2.pip安装virtualenvwrapper-win

3.创建一个存放虚拟环境的目录(建议命名为env或者virtualenv)

4.配置环境变量(变量名为:WORKON_HOME,值:目录的路径)

5.在cmd中,输入workon,可以查看当前目录下有多少个虚拟环境

③virtualenv的使用命令

workon  列出所有虚拟环境

workon [name]  进入指定的虚拟机环境

deactivate  退出当前虚拟环境

mkvirtualenv  [name]  创建虚拟环境

rmvirtualenv [name]  移除虚拟环境

④virtualenv中关于requirements.txt

在virtualenv中requirements.txt文件,里面记录了所有依赖包的版本号,其作用是用来在另一个环境上重新构建项目所需要的运行环境依赖。

1.导出当前环境到requirements.txt

pip freeze > requirements.txt

2.使用requirements.txt恢复环境

pip install -r requirements.txt

⑤pipenv管理模块和包

在当前路径下执行:pipenv install + 包名

通过 --dev 指明只安装在开发环境中:pipenv install --dev requests(举例:安装requests库)

1.卸载虚拟环境中的模块包:

pipenv uninstall + 包名

2.查看安装包的依赖关系:

pipenv graph

3.pipenv环境中生成requirements.txt文件:

pipenv lock -r --dev > requirements.txt

4.通过requirements.txt文件恢复环境:

pipenv install -r requirements.txt

⑥pipenv的相关使用命令

1.删除虚拟环境

pipenv --rm

2.列出本地工程路径

pipenv --where

3.列出虚拟环境路径

pipenv --venv

4.显示python解释器的信息

pipenv --py

5.查看依赖包

pipenv graph

6.生成lock文件

pipenv lock

7.激活虚拟环境

pipenv shell

8.退出虚拟机环境

exit

总结:virtualenv虚拟环境卸载第三方库后,第三方库所带的依赖包不会跟着删除,需要自己手动删除。但是pipenv通过(Pipfile和Pipfile.lock)两个文件来管理依赖包,卸载第三方库的时候,

可以把相关的依赖包也卸载干净。因为pipenv是对virtualenv和pip的封装,更加强大。

python_ck01(虚拟环境管理)的更多相关文章

  1. 在linux上安装python, jupyter, 虚拟环境(virtualenv)以及 虚拟环境管理之virtualenvwraper

    一, 安装python31.下载python3源码 wget https://www.python.org/ftp/python/3.6.7/Python-3.6.7.tar.xz2.解压缩源码包,去 ...

  2. python开发之虚拟环境管理:virtualenv、virtualenvwrapper、pycharm

    1 引言 进行Python开发时,多个项目可能使用到不同的依赖,例如A项目需要1.8版本的Django,而B项目需要2.0版本的Django,这时候如果没有使用虚拟环境,就需要来回卸载和安装Djang ...

  3. Python linux多版本共存以及虚拟环境管理(转摘)

    Python linux多版本共存以及虚拟环境管理 2017年08月01日 18:42:25 sliderSun 阅读数:197更多 个人分类: python   版权声明:本文为博主原创文章,未经博 ...

  4. anaconda虚拟环境管理,从此Python版本不用愁

    1 引言 在前几篇博文中介绍过virtualenv.virtualenvwrapper等几个虚拟环境管理工具,本篇要介绍的anaconda也有很强大的虚拟环境管理功能,甚至相比virtualenv.v ...

  5. Anaconda 包管理工具 conda 进行虚拟环境管理入门

    在基于 python 进行数据分析.机器学习等领域的实践和学习时,由于代码的更迭和更新,运行他人实现的代码或尝试安装新的工具库时往往需要指定特定版本的其他工具库,以满足特定环境的构建条件.而将同一工具 ...

  6. python虚拟环境管理之virtualenv,virtualenvwrapper,pipenv,conda

    虚拟环境的作用 使python环境拥有独立的包,避免污染原本的python环境.为不同的项目创建不同的环境可以避免安装的库过于庞大和相互干扰. 例如你想在同一台机器上开发用python2和python ...

  7. nave node 的虚拟环境管理工具

    nave 是类似python venv 的node 虚拟环境管理工具 安装 npm install -g nave 简单使用 帮助命令 Usage: nave <cmd> Commands ...

  8. pythonWeb框架创建app模块以及虚拟环境管理工具

    在进行项目搭建的时候,如果有多个功能模块,以及多个网页地址时,为了系统的可维护性,以及易读性,我们大多数情况下选择模块化开发 所以我们就要使用app指令来创建不同的功能模块 首先项目框架如下: 接下来 ...

  9. 【python】虚拟环境管理之 virtualenv 、pipenv

    虚拟环境介绍 应用场景 python在安装第三方包时,会被pip安装到/site-package下,如果我们需要同时维护多个python项目,那这些项目都会共用一个python,而真实需求是多个项目之 ...

随机推荐

  1. Nginx 轻松学 图文并茂 一学就会 附案例源码

    导读 篇幅较长,干货满满,需花费较长时间,转载请注明出处!背景音乐若影响到您,网页选项卡右上角即可关闭~~! Nginx概述 简介 Nginx (engine x) 是一个高性能的HTTP和反向代理w ...

  2. HTTP、TCP、IP协议面试题

    HTTP.TCP.IP协议基本定义 HTTP: (HyperText Transport Protocol)是超文本传输协议的缩写,它用于传送WWW方式的数据,关于HTTP协议的详细内容请参考RFC2 ...

  3. 深入浅出C#结构体

    目录 1.应用背景 2.结构体解析 2.1.结构体存在栈中 2.2.结构体不需要手动释放 3.封装心跳包结构体 4.结构体静态帮助类 5.New出来的结构体是存在堆中还是栈中? 5.1.不带形参的结构 ...

  4. Spring03——有关于 Spring AOP 的总结

    本文将为各位带来 Spring 的另一个重点知识点 -- Spring AOP.关注我的公众号「Java面典」,每天 10:24 和你一起了解更多 Java 相关知识点. 什么是 AOP 面向切面编程 ...

  5. 卷积的发展历程,原理和基于 TensorFlow 的实现

    欢迎大家关注我们的网站和系列教程:http://www.tensorflownews.com/,学习更多的机器学习.深度学习的知识! 稀疏交互 在生物学家休博尔和维瑟尔早期关于猫视觉皮层的研究中发现, ...

  6. sql MYSQL主从配置

    MYSQL主从配置 1.1 部署环境 主(master_mysql): 192.168.1.200 OS:CentOS 6.5 从(slave_mysql): 192.168.1.201 OS:Cen ...

  7. 《java编程思想》操作符

    1. 自动递增和递减 递增和递减运算是两种相当不错的快捷运算,递减操作符是 "--",意为减少一个单位,递增操作符是 "++",意为增加一个单位.这两个操作符各 ...

  8. 添加属于自己的python模块空间

    在我们学习python的过程中会遇到很多时候,我们需要自己曾经写过的模块,它可能是一个函数或者其他的东西,,,, 下面是我的解决过程,如果你像将自己建立的文件夹当作你存放自己写的模块的地方,你需要将你 ...

  9. 安装 MySQL 过程记录

    最近安装 MySQL 时 遇到了许多问题,记录一下安装过程以及遇到的问题. 第一步:在官网上下载适合自己版本的 MySQL,我选择的是 Windows 64 位免安装版的:    官网地址:https ...

  10. 使用内部枚举类作为外部类的参数的Mybatis的参数该如何判断

    新写了一个接口,期望根据不同的参数来给数据库中不同的字段进行传值.这里使用了内部静态枚举类的方式进行传值,在写mybatis动态sql时,如果是普通对象,一般使用,那么使用枚举类,如何判断枚举类的值呢 ...