简介
pyenv是一个简单的python版本管理工具,前身为pythonbrew,pyenv允许你改变全局的python版本,安装多种不同的python版本,设置应用指定的python版本以及创建/管理虚拟的python环境;
安装
Centos6.8上安装pyenv,先安装依赖
1 | yum -y install readline readline-devel readline-static openssl openssl-devel openssl-static sqlite-devel bzip2-devel bzip2-libs |
安装pyenv:1
curl -L https://raw.githubusercontent.com/pyenv/pyenv-installer/master/bin/pyenv-installer | bash
配置环境变量,并添加 pyenv 初始化到你的shell,1
2
3echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.bashrc
echo 'export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.bashrc
echo 'eval "$(pyenv init -)"' >> ~/.bashrc
常用命令
查看当前设置默认的
python版本1
pyenv version
查看当前已安装的所有
python版本1
pyenv versions
查看当前可安装的
python版本列表1
pyenv install -l | less
安装指定版本的
python1
pyenv install 2.7.1
设置全局
python版本1
pyenv global <python版本>
设置局部
Python版本
设置之后可以在目录内外分别试下which python或python --version看看效果, 如果没变化的话可以pyenv rehash之后再试试1
pyenv local <python版本>
python版本本地安装
以本地安装 2.7.1 版本为例,
- 通过执行
pyenv install 2.7.1 -v获取下载地址,然后通过浏览器下载文件,在目录/tmp准备Python-2.7.1.tgz文件; 然后在
/tmp下启动一个简单的httpserver1
2cd /tmp
python -m SimpleHTTPServer 4999在执行
pyenv install 2.7.1之前要先添加一个环境变量1
2export PYTHON_BUILD_MIRROR_URL="http://127.0.0.1:4999/"
pyenv install 2.7.1 -v从
httpserver的打印log中发现收到的请求是一个字符串
“HEAD /ca13e7b1860821494f70de017202283ad73b1fb7bd88586401c54ef958226ec8 HTTP/1.1“,我们要把Python-2.7.1.tgz复制一份到这个字符串为名的文件,然后重启httpserver,最后用pyenv即可安装1
2
3
4
5cp Python-2.7.1.tgz ca13e7b1860821494f70de017202283ad73b1fb7bd88586401c54ef958226ec8
python -m SimpleHTTPServer 4999
pyenv install 2.7.1
FAQ
支持 YouCompleteMe
需要在 .bashrc 加入下面命令:
1 | export PYTHON_CONFIGURE_OPTS="--enable-shared" |