Installl related

yum install readline readline-devel readline-static -y
yum install openssl openssl-devel openssl-static -y
yum install sqlite-devel -y
yum install bzip2-devel bzip2-libs -y

Install pyenv

git clone git://github.com/yyuu/pyenv.git ~/.pyenv

vim ~/.bashrc
export PYENV_ROOT="$HOME/.pyenv"
export PATH = "$PYENV_ROOT/bin:$PATH"
eval "$(pyenv init -)" source ~/.bashrc
# exec $SHELL

Check current version

python -V

List all version and install certain version

pyenv install --list
pyenv 3.5.1 install -v
## refresh database
pyenv rehash ## if not new installed version, do like :
pyenv global 3.5.1

多环境

# 创建新的环境,位于 ~/.pyenv/versions/
$ pyenv virtualenv 2.7.1 env271 # 切换到新的环境
$ pyenv activate env271 # 退回到系统环境
$ pyenv deactivate # 删除新创建的环境
$ rm -rf ~/.pyenv/versions/env271/

Examples

# 查看当前 pyenv 可检测到的所有版本,处于激活状态的版本前以 * 标示。
$ pyenv versions
system
* 3.5.1 (set by /root/.pyenv/version)
3.5.1/envs/flask_py351
3.5.1/envs/pelican
flask_py351
pelican # 查看当前处于激活状态的版本,括号中内容表示这个版本是由哪条途径激活的(global、local、shell)
$ pyenv version
3.5.1 (set by /root/.pyenv/version) # 使用 python-build(一个插件) 安装一个 Python 版本,到 $PYENV_ROOT/versions 路径下。
$ pyenv install -v 2.7.3 # 卸载
$ pyenv uninstall 2.7.3 # 为所有已安装的可执行文件 (如:~/.pyenv/versions/*/bin/*) 创建 shims,
# 因此,每当你增删了 Python 版本或带有可执行文件的包(如 pip)以后,都应该执行一次本命令
$ pyenv rehash # 设置全局的 Python 版本,通过将版本号写入 ~/.pyenv/version 文件的方式。
$ pyenv global 3.4.0 # 设置面向程序的本地版本,通过将版本号写入当前目录下的 .python-version 文件的方式。
# 通过这种方式设置的 Python 版本优先级较 global 高。pyenv 会从当前目录开始向上逐级查找 .python-version 文件,直到根目录为止。
#若找不到,就用 global 版本。
$ pyenv local 2.7.3 # 设置面向 shell 的 Python 版本,通过设置当前 shell 的 PYENV_VERSION 环境变量的方式。
# 这个版本的优先级比 local 和 global 都要高。--unset 参数可以用于取消当前 shell 设定的版本。
$ pyenv shell pypy-2.2.1
$ pyenv shell --unset

使用 pyenv 可以在一个系统中安装多个python版本的更多相关文章

  1. 如何在virtualenv环境中安装指定的python版本

    指定python版本:virtualenv   -p python执行文件路径     自定义虚拟环境名称.如果文件路径有空格,用引号. 如果不指定python版本,则默认使用环境变量中的python ...

  2. win10 64位系统中安装多个jdk版本的切换问题

    前言: 近期要更换oracle jdk到zulu jdk,因此在本地先安装一版zulu的来进行代码的编译和比较. 注释: 本地电脑之前是oracle jdk 1.8,要更换为zulu jdk 1.8. ...

  3. 使用pyenv在系统中安装多个版本的python

    pyenv的安装与使用 如果没有安装git,首先要安装git apt-get install git 安装完成后,使用自动安装程序提供的单行程进行安装: curl -L https://github. ...

  4. 在linux系统中安装VSCode(Visual Studio Code)

    在linux系统中安装VSCode(Visual Studio Code) 1.从官网下载压缩包(话说下载下来解压就直接可以运行了咧,都不需要make) 访问Visual Studio Code官网  ...

  5. 如何在win7系统中安装redis

    转载于:http://www.itxuexiwang.com/a/shujukujishu/redis/2016/0216/92.html?1455871954 如何在win7系统中安装redis​ ...

  6. AIX系统中安装Java6全过程(全部)

    ====================================================   From: GCG TSC pSeries <ibm800p@cn.ibm.com& ...

  7. 在RedHat.Enterprise.Linux_v6.3系统中安装Oracle_11gR2教程

    在RedHat.Enterprise.Linux_v6.3系统中安装Oracle_11gR2教程 本教程提供PDF格式下载: 在RedHat.Enterprise.Linux_v6.3系统中安装Ora ...

  8. 在Windows系统中安装集成的PHP开发环境

    原文:在Windows系统中安装集成的PHP开发环境 刚想学php的,又不会配置复杂php的环境,可以使用集成的,目前网上提供常用的PHP集成环境主要有AppServ.phpStudy.WAMP和XA ...

  9. 在 Linux 系统中安装Load Generator ,并在windows 调用方法

    在 Linux 系统中安装Load Generator ,并在windows 调用 由于公司需要测试系统的最大用户承受能力,所以需要学习使用loadrunner.在安装的时候碰到了不少问题,所以写下此 ...

随机推荐

  1. 002_linuxC++_.h和.c文件

    (一)程序修改001_linuxC++之_类的引入 (二)修改成为.h和.c文件 #include <stdio.h> #include "person.h" int ...

  2. ueditor自动上传Word中的图片

    如何做到 ueditor批量自动上传word图片? 1.前端引用代码 <!DOCTYPEhtmlPUBLIC"-//W3C//DTD XHTML 1.0 Transitional//E ...

  3. [Luogu] 最大收益

    题面:https://www.luogu.org/problemnew/show/P2647 题解:https://www.zybuluo.com/wsndy-xx/note/1142685

  4. mysql40题

    一.表关系 请创建如下表,并创建相关约束 导入现有数据库数据: /* Navicat Premium Data Transfer Source Server : localhost Source Se ...

  5. SpringMVC指定webapp的首页

    webapp的首页指的是http://localhost:8080/ 方法一 追加一个[/]URI的请求方法 @Controller public class WelcomeController { ...

  6. NSArray 的创建和遍历

    数组 用来存贮对象的有序列表,它是不可变的 不能存数C语言的基本数据类型 只支持OC对象 #pragma mark Create a array //Initialize NSArray void a ...

  7. codeforces#101194H. Great Cells(数学)

    题目链接: https://codeforces.com/gym/101194 题意: 在$n×m$的各自中填上$1$到$k$的数 定义Greate cell为严格大于同行和同列的格子 定义$A_g$ ...

  8. vue 使用 echart ,自定义样式案例

    1.vue 安装 echart 库 npm install echarts --save 2.vue代码 引入 let echarts = require("echarts/lib/echa ...

  9. java经典算法题50道

    原文 JAVA经典算法50题[程序1]   题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少?1.程序 ...

  10. zookeeper源码 — 三、集群启动—leader、follower同步

    zookeeper集群启动的时候,首先读取配置,接着开始选举,选举完成以后,每个server根据选举的结果设置自己的角色,角色设置完成后leader需要和所有的follower同步.上面一篇介绍了le ...