一、pyenv简介

pyenv 主要用来管理 Python 的版本,比如一个项目需要 Python 2.x ,一个项目需要 Python 3.x 。

pyenv 通过系统修改环境变量来实现 Python 不同版本的切换。

pyenv 它并没有使用将不同的 PATH植入不同的shell这种高耦合的工作方式,而是简单地在PATH 的最前面插入了一个垫片路径(shims):~/.pyenv/shims:/usr/local/bin:/usr/bin:/bin。所有对 Python 可执行文件的查找都会首先被这个 shims 路径截获,从而使后方的系统路径失效。
 

二、安装pyenv

1、安装pyenv依赖包

yum -y install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel libpcap-devel xz-devel

yum -y install git (用于从git中下载pyenv)

2.安装pyenv

从git上面克隆下pyenv,安装完毕

git clone https://github.com/pyenv/pyenv.git

3.配置pyenv环境变量

echo 'export PYENV_ROOT="$HOME/pyenv"' >> ~/.bash_profile
echo 'export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.bash_profile

echo 'eval "$(pyenv init -)"' >> ~/.bash_profile

source ~/.bash_profile

4.验证pyenv安装是否成功

pyenv commands 查看pyenv命令

三、安装多版本的python

1、查看当前系统默认python版本

python --version

2、使用pyenv安装python3.5

1)查看pyenv可安装的python版本

pyenv install --list

2)安装所需python版本

pyenv install -v 版本号

pyenv install -v 3.5.2

(这个官网下载好慢,等了好几分钟)

3)查看已安装版本

pyenv versions

system 表示系统自带的版本,表示 当前正在使用的版本

每次安装完成后需要刷新py可用列表

pyenv rehash

删除已安装版本

pyenv uninstall XXXXXX

四、使用pyenv

pyenv 可以从三个维度来管理 Python 环境,简称为: 当前系统 、 当前目录 、 当前shell 。这三个维度的优先级从左到右依次升高,即 当前系统 的优先级最低、 当前shell 的优先级最高。如果想修改系统全局的Python环境,可以采用 pyenv global PYTHON_VERSION 命令。该命令执行后会在 $(pyenv root) 目录(默认为 ~/.pyenv )中创建一个名为 version 的文件(如果该文件已存在,则修改该文件的内容),里面记录着系统全局的Python版本号。

1.当前系统模式 global

pyenv global 3.5.2

2.当前目录模式 local

1)新建目录,查看当前的设定版本,提示为空

2)设置版本为3.5.2

pyenv local 3.5.2

3)取消local设置

取消当前设置的版本使用 pyenv local --unset或者直接删除当前目录下面的 .python-version 文件

3.当前shell模式

五、安装 Pyenv-virtualenv插件

pyenv virtualenv 是pyenv的插件,为pyenv设置的python版本提供隔离的虚拟环境,设置虚拟环境后,在这某个目录下面安装的第三方库及修改库搜索路径都不会影响其他环境,相当于一个沙盒环境,互相不影响。
1.安装 pyenv-virtualenv插件

git clone git://github.com/yyuu/pyenv-virtualenv.git ./pyenv/plugins/pyenv-virtualenv

echo 'eval "$(pyenv virtualenv-init -)"' >> ~/.bash_profile
source ~/.bash_profile

2.查看是否成功安装,并获取帮助

pyenv help virtualenv

source ~/.bash_profile

3.创建一个虚拟环境,py版本设置为3.5.2,名字为myenv

pyenv virtualenv 3.5.2 myenv

4.切换和使用myenv

pyenv activate myenv

5.退出myenv

pyenv deactivate

6.删除myenv

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

  1. Python 虚拟环境 pyenv、venv(pyvenv)、virtualenv之间的区别

    请参考连接 https://blog.zengrong.net/post/2167.html https://blog.csdn.net/lanonjj/article/details/5105021 ...

  2. centos6 pyenv和virtualenv搭建python虚拟环境

    安装pyenv 基础环境软件包安装 yum -y install gcc gcc-c++ make git patch openssl-devel zlib-devel readline-devel ...

  3. 通过pyenv和virtualenv创建多版本Python虚拟环境

    虚拟环境使用第三方工具virtualenv创建,首先输入以下命令检查系统是否已经安装virtualenv. $ virtualenv --version 如果显示virtualenv版本号,则说明已经 ...

  4. 配置python虚拟环境Virtualenv及pyenv

    pyenv pyenv 可以让机器安装各种不同版本的python pyenv install --list 查看可以安装的python版本 pyenv versions 查看已安装的python版本 ...

  5. pyenv 配置python虚拟环境

    安装pyenv环境 yum -y install git yum install gcc make patch gdbm-devel openssl-devel sqlite-devel readli ...

  6. python虚拟环境之Pyenv

    一.windows下安装 1.使用命令安装 pip install pyenv-win --target %USERPROFILE%/.pyenv %USERPROFILE%/是具体的路径,例如 ## ...

  7. python虚拟环境的使用

    一. 安装 sudo apt-get install python-virtualenv 二. 创建环境 sudo virtualenv Myenv 创建完全隔离的Python环境,实质是创建了一个文 ...

  8. python虚拟环境virtualenv的安装与使用

    如果我们要同时开发多个应用程序,每个应用可能需要各自拥有一套“独立”的Python运行环境,我们可以使用virtualenv解决这个问题,它可以为一个应用创建一套“隔离”的Python运行环境. 一. ...

  9. 搭建本地虚拟服务器linux(CentOS 7)的python虚拟环境(Hyper-V演示)

    新建虚拟机->安装CentOS7->新建虚拟交换机:内部网络->CentOS7设置->网络适配器:虚拟交换机:新建虚拟交换机->进入CentOS # cd /etc/sy ...

随机推荐

  1. 【第五章】 springboot + mybatis

    springboot集成了springJDBC与JPA,但是没有集成mybatis,所以想要使用mybatis就要自己去集成.集成方式相当简单. 1.项目结构 2.pom.xml <!-- 与数 ...

  2. 精巧好用的DelayQueue 转

    我们谈一下实际的场景吧.我们在开发中,有如下场景 a) 关闭空闲连接.服务器中,有很多客户端的连接,空闲一段时间之后需要关闭之.b) 缓存.缓存中的对象,超过了空闲时间,需要从缓存中移出.c) 任务超 ...

  3. [Shiro] - 基于URL配置动态权限

    基于shiro进阶 更改了数据库表 之前的PageController是通过@RequiresPermissions和@RequiresRoles进行是否有权限/是否有角色的判定调用@RequestM ...

  4. Quartz.NET简介及入门指南

    Quartz.NET简介 Quartz.NET是一个功能完备的开源调度系统,从最小的应用到大规模的企业系统皆可适用. Quartz.NET是一个纯净的用C#语言编写的.NET类库,是对非常流行的JAV ...

  5. 51nod 1232 完美数 数位dp

    1232 完美数 题目来源: 胡仁东 基准时间限制:2 秒 空间限制:131072 KB  如果一个数能够被组成它的各个非0数字整除,则称它是完美数.例如:1-9都是完美数,10,11,12,101都 ...

  6. ubuntu16.04, git 的配置

    1.下载git:sudo apt-get install git 2.生成公钥:ssh-keygen -t rsa -C  '你的邮箱'     ,不停回车即可 3. mkdir test cd te ...

  7. A start job is running for Raise network interface(5min 13s )问题解决方法

    命令:sudo vim /etc/systemd/system/network-online.target.wants/networking.service将里面的TimeoutStartSec=5m ...

  8. mysql 开启远程访问

    # vi /etc/mysql/my.cnf修改 bind-address = 127.0.0.1  为  bind-address = 0.0.0.0 修改完成后重启mysql服务 # sudo / ...

  9. Jmeter测试API接口,用Jmeter自动化之检查DB数据

    如上: 注册接口,会新增数据,要怎么自动化检查DB中生成的数据呢? 很简单,只需要以下几个配置元件 JSON截取器或者正则表达式截取器:目的在于取出返回消息体中的数据aa JDBC后置处理器:目的在于 ...

  10. Jmeter 中对响应报文处理后断言用到BeanShell Assertion

    Jmeter中常用的断言可以是Response Assertion 如果需要对响应报文中的某个字符串进行解码,对解码之后的值在进行断言要怎么做呢? 仔细观察一下,可以用下面俩个元件 Regular E ...