当我们在同一个机器上进行开发多个项目,每个项目于用到包的不同版本的时候,就很尴尬。

安装python包的命令是:

  sudo pip install 包名

这样的话,会将包安装到/usr/local/lib/python2.7/disk-packages下。所有的包都会安装到这里。

当我们安装相同包的不同版本就会发生覆盖。非常尴尬。

怎样解决呢??安装python的虚拟环境!

安装python虚拟环境步骤如下:

1 升级一下python包管理工具pip

  sudo pip install --upgrade pip

  想升级包的时候 都可以用 sudo pip install --upgrade 包名

2 python虚拟环境工具安装

  sudo pip install virtualenv       或者   sudo apt-get install virtualenv

  sudo pip install virtualenvwrapper  或者   sudo easy_install virtualenvwrapper

3 创建自己的虚拟环境

  正常安装完两个工具,我们可以使用一下命令操作我们的虚拟环境:

  创建虚拟环境:  mkvirtualenv 环境名称 

    创建python2的虚拟环境:

      mkvirtualenv -p /usr/bin/python2.7 虚拟环境名称

    创建python3的虚拟环境: 原理同上

      mkvirtualenv -p /usr/bin/python3.5 虚拟环境名称

  使用虚拟环境:  workon 环境名称

  退出虚拟环境:  deactivate

  删除虚拟环境:  rmvirtualenv 环境名称

但是 发现 提示我们 没有mkvirtualenv命令,这个时候需要我们设置一下环境变量:

  3.1 创建要给目录用来存放我们的虚拟环境,需要选择自己的家目录下创建,存放虚拟环境的目录是一个隐藏目录 名为:   .virtualenvs    意思是  virtual environments 虚拟环境

    mkdir $HOME/.virtualenvs

    注意,创建之后不要进入这个目录,否则接下来绑定命令会出错

  3.2 打开~/.bashrc文件,添加如下两行:

    export WORKON_HOME=$HOME/.virtualenvs

    source /usr/local/bin/virtualenvwrapper.sh

  保存后终端执行:

    source ~/.bashrc

  执行完这两个步骤之后,系统就能识别mkvirtualenv命令啦~~~下面就可以创建自己的虚拟环境啦~

  正常安装完两个工具,我们可以使用一下命令操作我们的虚拟环境:

  创建虚拟环境: mkvirtualenv 环境名称

    如果装了python3的环境,默认会安装一个python3的虚拟环境。

    因为很多包还没有更新到python3,创建一个符合自己版本的虚拟环境如下:

    需要先找到自己python的安装路径和版本,我以我自己的为例:

    创建python2的虚拟环境:

      mkvirtualenv -p /usr/bin/python2.7 虚拟环境名称

    创建python3的虚拟环境: 原理同上

      mkvirtualenv -p /usr/bin/python3.5 虚拟环境名称

    注意:虽然选择了创建python版本的安装路径,但创建出来的虚拟环境目录仍然在我们自己创建的.virtualenvs 里

  使用虚拟环境:  workon 环境名称

  退出虚拟环境:  deactivate

  删除虚拟环境:  rmvirtualenv 环境名称

  查看所有的虚拟环境: workon 两次tab

  创建虚拟环境之后默认就进入这个虚拟环境了~注意命令提示符已经发生改变。

4 在自己的虚拟环境中安装和导入工具包,安装在自己的虚拟环境,与真实环境是不影响的。

  注意 不要使用sudo命令 这里是虚拟环境

  安装包:  pip install 包名称  例如: pip install pymysql

  查看当前虚拟环境种的包: pip list

  升级包:  pip install --update 包名

  卸载包:  pip uninstall 包名

通过以上方法,我们就可以创建自己的虚拟环境,在不同的项目中使用不同的环境用不同版本的包来开发啦!

ubuntu下创建python的虚拟环境的更多相关文章

  1. Ubuntu系统下创建python数据挖掘虚拟环境

    虚拟环境:   虚拟环境是用于创建独立的python环境,允许我们使用不同的python模块和版本,而不混淆.   让我们了解一下产品研发过程中虚拟环境的必要性,在python项目中,显然经常要使用不 ...

  2. windows下创建Python虚拟环境

    windows下创建Python虚拟环境 说明 由于Python的版本众多,还有Python2和Python3的争论,因此有些软件包或第三方库就容易出现版本不兼容的问题. 通过 virtualenv ...

  3. 更改Ubuntu下默认Python版本

    更改Ubuntu下默认Python版本 首先查看系统内有哪些版本的Python ls /usr/bin/python* 查看当前python版本 python --version 基于用户修改默认版本 ...

  4. Ubuntu下配置python完成爬虫任务(笔记一)

    Ubuntu下配置python完成爬虫任务(笔记一) 目标: 作为一个.NET汪,是时候去学习一下Linux下的操作了.为此选择了python来边学习Linux,边学python,熟能生巧嘛. 前期目 ...

  5. 在ubuntu下编写python(python入门)

    在ubuntu下编写python 一般情况下,ubuntu已经安装了python,打开终端,直接输入python,即可进行python编写. 默认为python2 如果想写python3,在终端输入p ...

  6. Ubuntu 下生成 python 环境安装文件 requirements.txt

    参考: 查找python项目依赖并生成requirements.txt Ubuntu 下生成 python 环境安装文件 requirements.txt 首先通过 pip 安装pyreqs模块: p ...

  7. ( 转)Ubuntu下创建、重命名、删除文件及文件夹,强制清空回收站方法

    Ubuntu下创建.重命名.删除文件及文件夹,强制清空回收站方法 mkdir 目录名 ——创建一个目录 rmdir 空目录名 ——删除一个空目录 rm 文件名 文件名 ——删除一个文件或多个文件 rm ...

  8. ubuntu下创建文件夹快捷方式

    title: ubuntu下创建文件夹快捷方式 toc: false date: 2018-09-01 17:22:28 categories: methods tags: ubuntu 快捷方式 s ...

  9. linux中创建python的虚拟环境

    1,何为虚拟环境 linux是支持多用户的系统,如果某一位用户不想使用公用环境,想指定特殊的python版本安装仅供个人使用的一些包,那么虚拟环境将满足他的要求 2,虚拟环境使用需要virtualen ...

随机推荐

  1. 基于netcore实现mongodb和ElasticSearch之间的数据实时同步的工具(Mongo2Es)

    基于netcore实现mongodb和ElasticSearch之间的数据实时同步的工具 支持一对一,一对多,多对一和多对多的数据传输方式. 一对一 - 一个mongodb的collection对应一 ...

  2. 功能性AI术语表

    算法:一套计算机要遵循的指令.一个算法可以是一个简单的单步程序也可以是一个复杂的神经网络,但是通常被用来指一个模型. 人工智能:这是一个统称.广义上说,软件意味着模仿或取代人类智能的各个方面.人工智能 ...

  3. 简单使用git和github来管理代码----配置与使用

    在以前没听说过github之前,自己写的代码很容易丢或者遗失,等到用时才知码到用时方恨丢,现在用了github,真的是替自己生省不少的事,闲话不多说,上教程. 1 在github上注册账号 https ...

  4. 【XML】 XML格式一些记录

    XML XML格式常用于网络通讯,本身不会有作为而是作为纯文本传输,可以说它是一种独立于应用和硬件的数据传输工具.虽然看起来XML比HTML要更加简单,也知道的更加晚一点,但是需要知道的是,XML才是 ...

  5. 数据库 --> 8种NoSQL数据库对比

    8 种 NoSQL 数据库对比 NoSQL是一项全新的数据库革命性运动,NoSQL的拥护者们提倡运用非关系型的数据存储.现今的计算机体系结构在数据存储方面要求具备庞大的水平扩展性,而NoSQL致力于改 ...

  6. Linux命令 ls -l s输出内容含义详解

    1. ls  只显示文件名或者文件目录 2. ls -l(这个参数是字母L的小写,不是数字1) 用来查看详细的文件资料 在某个目录下键入ls -l可能会显示如下信息: 文件属性(占10个字符空间)  ...

  7. Android 源代码结构

    简介 在使用Andriod SDK进行应用程序开发的时候,我们需要对源代码进行调试,有可能需要进入到某个Android API函数内部进行跟踪调试.但是,如果目标版本的SDK没有关联对应版本的源代码的 ...

  8. u3d材质Tiling和Offset意义以及TRANSFORM_TEX

    1. TRANSFORM_TEX主要作用是拿顶点的uv去和材质球的tiling和offset作运算, 确保材质球里的缩放和偏移设置是正确的 下面这两个函数是等价的.o.uv =   TRANSFORM ...

  9. python全栈学习--day5

    字典 特点:字典是python中唯一的映射类型,采用键值对(key-value) 的形式存数据. 存储大量的数据,是关系型数据,查询数据快. 字典初始说明: 遍历字典从列表开始,列表是从头便利到尾的. ...

  10. New UWP Community Toolkit - RadialGauge

    概述 New UWP Community Toolkit  V2.2.0 的版本发布日志中提到了 RadialGauge 的调整,本篇我们结合代码详细讲解  RadialGauge 的实现. Radi ...