官网:https://virtualenv.pypa.io/en/stable/userguide/

virtualenv通过创建独立Python开发环境的工具, 来解决依赖、版本问题

基本使用:

  1. dahu@dahu-OptiPlex-3046:~/myfile$ virtualenv ENV #创建一个名为ENV的目录, 并且安装了ENV/bin/python, 创建了lib,include,bin目录
  2. New python executable in /home/dahu/myfile/ENV/bin/python
  3. Installing setuptools, pip, wheel...done.
  4. dahu@dahu-OptiPlex-3046:~/myfile$ cd ENV
  5. dahu@dahu-OptiPlex-3046:~/myfile/ENV$ ls -lh
  6. total 20K
  7. drwxrwxr-x 2 dahu dahu 4.0K 9 11 14:10 bin
  8. drwxrwxr-x 2 dahu dahu 4.0K 9 11 14:10 include
  9. drwxrwxr-x 3 dahu dahu 4.0K 9 11 14:10 lib
  10. drwxrwxr-x 2 dahu dahu 4.0K 9 11 14:10 local
  11. -rw-rw-r-- 1 dahu dahu 60 9 11 14:10 pip-selfcheck.json
  • lib,所有安装的python库都会放在这个目录中的lib/pythonx.x/site-packages/
  • bin,bin/python是在当前环境是使用的python解释器

继承/usr/lib/python2.7/site-packages下的所有库,当前版本默认是不继承全局库的,以前的用法是 --no-site-packages ,这个弃用了

  1. virtualenv --system-site-packages ENV

目前我用的virtualenv的版本是

  1. dahu@dahu-OptiPlex-:~/myfile/ENV$ virtualenv --version
  2. 15.1.

激活virtualenv

  1. dahu@dahu-OptiPlex-:~/myfile/ENV$ source bin/activate
  2. (ENV) dahu@dahu-OptiPlex-:~/myfile/ENV$

终端发生了变化,查看当前库,只有三个

  1. (ENV) dahu@dahu-OptiPlex-:~/myfile/ENV$ pip list
  2. DEPRECATION: The default format will switch to columns in the future. You can use --format=(legacy|columns) (or define a format=(legacy|columns) in your pip.conf under the [list] section) to disable this warning.
  3. pip (9.0.)
  4. setuptools (36.4.)
  5. wheel (0.30.)
  1. pip freeze #显示所有依赖
  2. pip freeze > requirement.txt #生成requirement.txt文件
  3. pip install -r requirement.txt #根据requirement.txt生成相同的环境

关闭virtualenv

使用下面命令

  1. $ deactivate

指定python版本

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

  1. #创建python2.7虚拟环境
  2. Test git:(master) virtualenv -p /usr/bin/python2. ENV2.
  3. Running virtualenv with interpreter /usr/bin/python2.
  4. New python executable in ENV2./bin/python
  5. Installing setuptools, pip...done.
  1. #创建python3.4虚拟环境
  2. Test git:(master) virtualenv -p /usr/local/bin/python3. ENV3.
  3. Running virtualenv with interpreter /usr/local/bin/python3.
  4. Using base prefix '/Library/Frameworks/Python.framework/Versions/3.4'
  5. New python executable in ENV3./bin/python3.
  6. Also creating executable in ENV3./bin/python
  7. Installing setuptools, pip...done.

基本解决python版本冲突问题和python库不同版本的问题

第二部分

virtualenv 也可以用在pycharm中

项目打开好了之后,设置里面: 1.找到项目解释器 2,创建虚拟环境,3.选择好虚拟的环境。

接下来,这个项目就已经用了虚拟环境了。

virtualenv python的虚拟环境的更多相关文章

  1. Python的虚拟环境virtualenv

    原文地址:blog.sina.com.cn/s/blog_4ddef8f80101eu0w.html Python的虚拟环境可以使一个Python程序拥有独立的库library和解释器interpre ...

  2. 使用python的虚拟环境virtualenv

    技术背景 在前面几篇博客中我们介绍了容器的使用(博客1.博客2.博客3.博客4.博客5),容器是一种系统级的隔离方案,更多的强调资源上的隔离.而这里我们要介绍的python的虚拟环境,更加强调的是依赖 ...

  3. ubuntu下创建python的虚拟环境

    当我们在同一个机器上进行开发多个项目,每个项目于用到包的不同版本的时候,就很尴尬. 安装python包的命令是: sudo pip install 包名 这样的话,会将包安装到/usr/local/l ...

  4. python设置虚拟环境

    一.介绍 虚拟环境-virtualenv是一个用于隔绝的python环境的工具,虚拟环境与本地环境互相隔离,互不影响,例如我们要安装django2.0的版本但是本地已经安装了1.1的,这时只需要在本地 ...

  5. Python开发虚拟环境使用virtualenvwrapper的搭建及pycharm链接步骤

    virtualenv 是一个创建隔绝的Python环境的工具.virtualenv创建一个包含所有必要的可执行文件的文件夹,用来使用Python工程所需的包.创建的环境是独立的,互不干扰,无需sudo ...

  6. Python的虚拟环境

    Python自带env # 新建虚拟环境 python -m venv env_name # 激活虚拟环境 cd env_name cd Scripts activate # 退出虚拟环境 # 到达虚 ...

  7. centos 下Python独立虚拟环境创建

    virtualenv Python有着庞大的开源社区的支持,很自然就产生这么一个问题:第三方包参差不齐,如果我们想在服务器测试,或者升级某个包,就会导致生产环境产生杂乱,多余的第三方依赖包. virt ...

  8. 搭建python的虚拟环境

    文章连接:https://www.cnblogs.com/zlsgh/p/8485848.html ubuntu系统下Python虚拟环境的安装和使用        前言:进行python项目开发的时 ...

  9. python进阶-虚拟环境

    virtualenv # 安装 pip install virtualenv # 查看版本,确认安装完成 virtualenv --version # 创建虚拟环境 virtualenv my_env ...

随机推荐

  1. VC++的debug与release版本

    因为在Debug中有ASSERT断言保护,所以要崩溃,而在Release优化中就会删掉ASSERT,所以会出现正常运行. void func() {    char b[2]={0};    strc ...

  2. Cochran’s Q Test

    sklearn实战-乳腺癌细胞数据挖掘(博客主亲自录制视频教程) https://study.163.com/course/introduction.htm?courseId=1005269003&a ...

  3. phpstrom+xdebug+chrome+postman调试工具搭建

    php是解释性语言,大部分调试的时候使用var_dump+exit就可以搞定了,但是在大项目或遇到了负载的问题的时候你就需要断点调试.变量打印.性能分析了,php也有非常程序的解决方案,我们现在就动手 ...

  4. [DeeplearningAI笔记]卷积神经网络3.1-3.5目标定位/特征点检测/目标检测/滑动窗口的卷积神经网络实现/YOLO算法

    4.3目标检测 觉得有用的话,欢迎一起讨论相互学习~Follow Me 3.1目标定位 对象定位localization和目标检测detection 判断图像中的对象是不是汽车--Image clas ...

  5. 修复 Plugin execution not covered by lifecycle configuration: org.codehaus.mojo:build-helper-maven-plugin:1.8:add-source (execution: add-source, phase: generate-sources)

    在maven项目中使用add-source时,pom.xml报如下错误: Plugin execution not covered by lifecycle configuration: org.co ...

  6. GridControl GridView 修改表格中的标题居中

    Grid Designer>Views>Appearance>HeaderPanel>TextOptions>HAIignment{Center} 依次打开并找到HAIL ...

  7. 【BZOJ】1415 [Noi2005]聪聪和可可 期望DP+记忆化搜索

    [题意]给定无向图,聪聪和可可各自位于一点,可可每单位时间随机向周围走一步或停留,聪聪每单位时间追两步(先走),问追到可可的期望时间.n<=1000. [算法]期望DP+记忆化搜索 [题解]首先 ...

  8. 推箱子 BFS

    [编程题] 推箱子 大家一定玩过“推箱子”这个经典的游戏.具体规则就是在一个N*M的地图上,有1个玩家.1个箱子.1个目的地以及若干障碍,其余是空地.玩家可以往上下左右4个方向移动,但是不能移动出地图 ...

  9. Java 中的几种线程池这么用才是对的

    为什么要使用线程池 虽然大家应该都已经很清楚了,但还是说一下.其实归根结底最主要的一个原因就是为了提高性能. 线程池和数据库连接池是同样的道理,数据库连接池是为了减少连接建立和释放带来的性能开销.而线 ...

  10. kali2.0安装虚拟机工具

    kali2.0无法安装虚拟机工具,显示VMware Tools无法用于该虚拟机,或者安装之后无法进行复制.粘贴等操作. 解决办法: step1: 更换源 root@starnight:~# vim / ...