virtualenv

前提是已经安装好了python.我的ubuntu是自带了python2.7和python3.6

安装vrtualenv

sudo apt-get install python-virtualenv

创建virtualenv环境

virtualenv pyenv

激活virtualenv环境

lcg@ubuntu:~$ cd pyenv/bin/
lcg@ubuntu:~/pyenv/bin$ source activate

激活后执行python可以看到默认是python2.7的环境,我们需要的是python3,那么先退出此环境,再创建python3的环境

退出环境

(pyenv) lcg@ubuntu:~/pyenv/bin$ deactivate

创建python3.6环境

lcg@ubuntu:~$ virtualenv -p /usr/bin/python3.6 py3

virtualenvwrapper

先安裝pip(我安裝的是python3的)

sudo apt install python3-pip

創建軟連接

ln -s /usr/bin/pip3 /usr/bin/pip

virtualenvwrapper是一个virtualenv的管理工具,有了它就不需要每次激活都去指定目录执行activate那么麻烦。

安装:

pip install virtualenvwrapper

找打它的位置,并把它的位置进行复制(我的位置是/home/lcg/.local/bin/virtualenvwrapper.sh)

sudo find / -name virtualenvwrapper.sh

配置bashrc

在最后面添加下面的两行配置内容并保存(source对应的是刚才复制的地址)

export WORKON_HOME=$HOME/.virtualenvs
source /home/lcg/.local/bin/virtualenvwrapper.sh

再source一下使得配置生效

然后就可以创建virtualenv环境了,创建命令是mkvirtualenv,创建完成后自动进入,退出命令是deactivace。下次在进入只需要workon一下就列出所有环境并且可以在workon后面加上环境进入,所有的环境在~/.virtualenvs目录下

我的默认进入python3的环境

mkvirtualenv pyenv

退出环境

deactivate

删除环境

lcg@ubuntu:~$ cd ~/.virtualenvs/
lcg@ubuntu:~/.virtualenvs$ rm -rf pyenv/

创建python2环境

mkvirtualenv --python=/usr/bin/python2 py2

 

Windows下安装virtualenv和virtualenvwrapper

1.安装virtualenv

pip install virtualenv

2.安装virtualenvwrapper

pip install virtualenvwrapper-win

mkvirtualenv --python=C:\Python27\python.exe py27

Python多版本共存virtualenv配置的更多相关文章

  1. Ancoda 下的python多版本共存

    Ancoda 下的python多版本共存 virtualenv python 多版本共存 Pip, Virtualenv 和Fabric 被称为python 的三大神器,Pip 是包管理工具,Virt ...

  2. windows配置Python多版本共存

    windows配置Python多版本共存 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 最近Python开发蛮火的,三年前我的一个运维朋友就告诉我说Python语言将来会很火,当时 ...

  3. [转]Windows下Python多版本共存

    https://blog.csdn.net/dream_an/article/details/51248736 Windows下Python多版本共存 Python数据科学安装Numby,pandas ...

  4. Windows下Python多版本共存

    Windows下Python多版本共存 Python数据科学安装Numby,pandas,scipy,matpotlib等(IPython安装pandas) 0.0 因为公司项目,需要Python两个 ...

  5. Python多版本共存安装

    Python的安装 进入Python官方网站:www.python.org下载系统对应的Python版本 按照提示步奏安装,安装路径选择自定义,方便查找 安装完成后,按win+R键,输入cmd进入cm ...

  6. Python - 多版本共存与虚拟独立环境

    背景 利用pip直接在本地python环境安装包,基本上都安装到了site_package目录下面. 随着安装的包越来越多,依赖关系也就越来越复杂.不同的项目之间,依赖关系也会出现版本冲突的问题. 此 ...

  7. mac上Python多版本共存(python2.7.10和python3.5.0)

    本文的实现目标是在mac上安装一个python3.5.0的版本,跟当前系统自带的python2.7.10共存. 查看当前版本号 python -V 2.7.10 安装配置Python版本管理器pyen ...

  8. Python多版本共存的方法

    目录 Python2.Python3共存的方法 python2下载及环境变量配置 第一步.打开Python官网,下载Python2 第二步.python2环境变量配置 测试结果 Python2.Pyt ...

  9. Python多版本共存之pyenv

    经常遇到这样的情况: 系统自带的Python是2.6,自己需要Python 2.7中的某些特性: 系统自带的Python是2.x,自己需要Python 3.x: 此时需要在系统中安装多个Python, ...

随机推荐

  1. For all entries in

    Today I read about a blog explaining very detailedly on how to correctly use the key words FOR ALL E ...

  2. JAVA小程序-----买衣服

    import java.util.Scanner; //引用扫描器 public class TestDemo1 { public static void main(String [] args){ ...

  3. 第四十一课 KMP子串查找算法

    问题: 右移的位数和目标串没有多大的关系,和子串有关系. 已匹配的字符数现在已经有了,部分匹配值还没有. 前六位匹配成功就去查找PMT中的第六位. 现在的任务就是求得部分匹配表. 问题:怎么得到部分匹 ...

  4. 基于CART的回归和分类任务

    CART 是 classification and regression tree 的缩写,即分类与回归树. 博主之前学习的时候有用过决策树来做预测的小例子:机器学习之决策树预测--泰坦尼克号乘客数据 ...

  5. 05 面向对象:构造方法&static&继承&方法 &final

    构造方法及其重载: /* 构造方法格式特点 * a:方法名与类名相同(大小也要与类名一致) * b:没有返回值类型,连void都没有 * c:没有具体的返回值return; * 构造方法的重载 * 重 ...

  6. 转载《Oracle的tnsnames.ora配置(PLSQL Developer)》

    源地址:https://www.cnblogs.com/qq3245792286/p/6212617.html. 首先打开tnsnames.ora的存放目录,一般为D:\app\Administrat ...

  7. ★ MYSQL隔离级别 通俗理解 + mysql、oracle默认事务隔离级别

    ★  脏读 : 读取了前一事务 未提交 的数据 ; 不可重复读    : 读取了前一事务     提交 的数据: ★ 幻读 与 不可重复读 common :都是读取了另一条已经提交的事务(这点与脏读不 ...

  8. linux查看网络信息命令

    #遇到一条很长的命令怎么办,想换行的时候在末尾增加\符号就可以换行继续输入命令了 #在ifconfig内容中找出ip [root@bogon ~]# ifconfig ens33|grep " ...

  9. MySQL在登陆时出现ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)错误

    错误显示:ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES) 解决方案: 1.找到配 ...

  10. Object 及toString() 方法的重写

    Object: 是所有的类的父类  ,Object中所有的方法 , 子类都能使用  ,   接口不是Object子类. Person: /*将父类的equals方法 重写 * 不改变父类的源代码 eq ...