virtualenv

1.安装virtualenv包

[root@localhost ~]# pip install virtualenv

2.创建虚拟环境,位置不固定,可以在项目的目录下,也可以不在项目的目录下。

[root@localhost ~]# virtualenv project_env

3.激活虚拟环境,同时进入虚拟环境

[root@localhost ~]# source project_env/bin/activate

4.安装python的requests模块

(project_env) [root@localhost ~]# pip install requests

5.查看虚拟环境中安装的模块

(project_env) [root@localhost ~]# pip list
(project_env) [root@localhost ~]# pip freeze

6.创建项目并启动项目

(project_env) [root@localhost ~]# mkdir project && cd project
(project_env) [root@localhost project]# python Main.py

7.退出虚拟环境

(project_env) [root@localhost project]# deactivate
  • 虚拟环境的路径与项目的路径互不相关,它们可以在不同的目录下面。主要看 source project_env/bin/activate 进入的是哪一个虚拟环境,就用哪一个虚拟环境运行项目。
  • 进入虚拟环境,就是用虚拟环境运行项目。不进入虚拟环境,就是用系统的python环境运行项目。
  • 上面就可以简单的创建并使用虚拟环境了,为了更方便的使用virtualenv,需要搭配virtualenvwrapper。

virtualenvwrapper

安装virtualenvwrapper包

[root@localhost ~]# pip install virtualenvwrapper

查找virtualenvwrapper.sh脚本的路径。这里路径为:/www/wwwroot/project_env/bin/virtualenvwrapper.sh

[root@localhost ~]# find / -name virtualenvwrapper.sh

修改linux的当前用户的配置文件:~/.bashrc。也是终端文件。文件中添加如下代码:

export WORKON_HOME=~/Envs      # 设置virtualenv的统一管理目录,以后自动下载的虚拟环境都放在这
export VIRTUALENVWRAPPER_VIRTUALENV_ARGS='--no-site-packages' # 添加virtualenvwrapper的参数,生成干净隔绝的环境
export VIRTUALENVWRAPPER_PYTHON=/usr/bin/python # 指定python解释器
source /www/wwwroot/project_env/bin/virtualenvwrapper.sh # 执行virtualenvwrapper安装脚本

读取文件,使得生效,此时已经可以使用 virtalenvwrapper 了。

[root@localhost ~]# source ~/.bashrc

1.创建虚拟环境,同时激活进入虚拟环境 project_env。

[root@localhost ~]# mkvirtualenv project_env

2.进入虚拟环境,使用 workon 可以查看创建了哪些虚拟环境。

[root@localhost ~]# workon
[root@localhost ~]# workon project_env

3.使用虚拟环境,这里 project 项目下面有个 Main.py 文件。

(project_env) [root@localhost ~]# pip list
(project_env) [root@localhost ~]# pip freeze
(project_env) [root@localhost ~]# pip install requests
(project_env) [root@localhost ~]# mkdir project && cd project
(project_env) [root@localhost project]# python Main.py

4.退出虚拟环境

(project_env) [root@localhost ~]# deactivate

5.删除虚拟环境

[root@localhost ~]# rmvirtualenv project_env

为什么需要 virtualenvwrapper?而不是virtualenv?这要从 virtualenv 说起。

  • virtualenv 最大的一个缺点就是,每次开启虚拟环境之前要去虚拟环境所在目录下的 bin 目录下 source 一下 activate,这就需要我们记住每个虚拟环境所在的目录。
  • 一种可行的解决方案是,将所有的虚拟环境目录全都集中起来,比如放到 ~/virtualenvs/,并对不同的虚拟环境使用不同的目录来管理。
  • virtualenvwrapper 正是这样做的。并且,它还省去了每次开启虚拟环境时候的 source 操作,使得虚拟环境更加好用。
  • 创建虚拟环境实质上就是创建一个文件夹。

https://www.cnblogs.com/pyyu/p/9015317.html

https://www.cnblogs.com/st-st/p/10251449.html

https://www.jianshu.com/p/7ed2dfa86e90

https://blog.csdn.net/qq_41250801/article/details/83832482

Python—虚拟环境的创建与管理(virtualenv与virtualenvwrapper)的更多相关文章

  1. Python虚拟环境的安装和配置-virtualenv与windows下多个python版本共存

    Python虚拟环境的安装和配置-virtualenv与windows下多个python版本共存 windows下多个python版本共存 https://www.python.org/downloa ...

  2. python为何需要虚拟环境--Python虚拟环境的安装和配置-virtualenv

    一 虚拟环境 virtual environment 它是一个虚拟化,从电脑独立开辟出来的环境.通俗的来讲,虚拟环境就是借助虚拟机docker来把一部分内容独立出来,我们把这部分独立出来的东西称作“容 ...

  3. Windows Python虚拟环境配置(Distribute + pip + virtualenv + virtualenvwrapper-powershell)

    对于Python开发新手,很多人会迷茫那些各种名目的工具和概念,如Python2.7, Python3.3, Distribute, pip, virtualenv,Setuptools, easy_ ...

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

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

  5. Python版本共存之道:virtualenv和virtualenvwrapper

    以前觉得根本用不着这个,但是写不同项目的时候就遇到了问题,不可能把之前的全部删掉从新安装,于是就想到了这个,终于还是要学它, 现在做一个命令的总结,方便自己和大家查询 #以下以对 test 为名的虚拟 ...

  6. 【Tools】ubuntu无法virtualenv创建python虚拟环境的解决

    刚有人问我Ubuntu python虚拟环境无法创建问题,报错same file error,防止今后遇到忘记,记录下可能的问题. 1.先在windows上试了下: pip install virtu ...

  7. [解决问题]ubuntu无法virtualenv创建python虚拟环境的解决

    刚有人问我Ubuntu python虚拟环境无法创建问题,报错same file error,防止今后遇到忘记,记录下可能的问题. 1.先在windows上试了下: pip install virtu ...

  8. 使用pipenv管理python虚拟环境

    前言 近期的项目中,我开始尝试着从virtualenv管理python虚拟环境,切换到用pipenv来管理. 经过一段时间的使用,着实觉得pipenv使用的更加顺手,更加的便捷.这当然也延续了 Ken ...

  9. PyCharm中创建项目时,在所创建的python虚拟环境下的pip失效

    在这篇博文里,我简单地叙述了我在使用PyCharm创建一个flask项目时遇到的问题,以及我解决这个问题的过程.其中比较值得注意的点有:①PyCharm创建新项目时的解释器配置②Python虚拟环境的 ...

随机推荐

  1. P1005 Spell It Right

    # P1005 Spell It Right 原题 Given a non-negative integer N, your task is to compute the sum of all the ...

  2. 转战物联网·基础篇03-从JSON数据到短指令谈思维的转变

      了解了物联网项目的大体结构之后,我们先从物联网的联网相关部分说起,这也是物联网项目中的关键环节.在联网环节中,不仅要考虑如何连接上,还要考虑连接后如何传输数据.换句话说数据是以什么格式进行传输,对 ...

  3. Transportable tablespace on standby (Doc ID 788176.1)

    APPLIES TO: Oracle Database - Enterprise Edition - Version 10.2.0.1 to 10.2.0.4 [Release 10.2]Oracle ...

  4. 移位寄存器及verilog代码

    通用移位寄存器 作用:后续补全 )( :] Data_out, output MSB_out, LSB_out, :] Data_in, input MSB_in, LSB_in, input s0, ...

  5. CF1253E Antenna Coverage(DP)

    本题难点在正确性证明. 令 \(f_i\) 表示 \([1,i]\) 被全部覆盖的最小花费.答案为 \(f_m\). 首先发现,添加一个区间 \([0,0]\) 不会影响答案.所以 \(f_i\) 的 ...

  6. Feign原理 (图解)

    疯狂创客圈 Java 高并发[ 亿级流量聊天室实战]实战系列 [博客园总入口 ] 疯狂创客圈 正在进行分布式和高并发基础原理的研习,进行已经发布一些基础性的文章: 一.版本1 :springcloud ...

  7. python接口自动化6-参数化关联

    前言 接口中我们经常需要用到参数关联,比如,登录token,需要传给后面的参数使用,又比如要查看某个商品需要将商品的id传入下一个接口使用. 等等,所以我们必要学会 re 正则获取,或者返回json获 ...

  8. IT兄弟连 HTML5教程 HTML5的靠山 W3C、IETF是什么

    无规矩不成方圆,软件开发当然不能例外.Web开发涉及的厂商和技术非常多,所以必须要有参考的标准,而且需要一系列的标准.Web程序都是通过浏览器来解析执行的,通过页面的展示内容与用户互动,所以Web标准 ...

  9. python学习(day1-2)

    python 学习(day - 1-2 ) 变量:将运算的中间结果暂存到内存,以便后续程序调⽤. 变量的命名规则: 1, 变量由字⺟, 数字,下划线搭配组合⽽成 2, 不可以⽤数字开头,更不能是全数字 ...

  10. POJ 1724 (分层图最短路)

    ### POJ 1724 题目链接 ### 题目大意: 给你 N 个点 ,M 条有向路,走每条路需要花费 C 元,这段路的长度为 L . 给你 K 元,问你能否从 1 走到 N 点且花费不超过 K 元 ...