pyenv实现多个python版本并存
pyenv实现多个python版本并存
由于python 2和3存在不小的区别,尤其个别第三方库并不是都兼容,所以有时候我们需要在同一台服务器上运行多个不同的python版本
1.安装pyenv
(1)安装到$HOME/.pyenv目录:
1
git clone https://github.com/yyuu/pyenv.git ~/.pyenv
(2)配置环境变量
12
echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.bash_profileecho 'export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.bash_profile
(3)添加pyenv初始化到你的shell并生效
123
echo 'eval "$(pyenv init -)"' >> ~/.bash_profileecho 'eval "$(pyenv virtualenv-init -)"' >> ~/.bash_profilesource ~/.bash_profile
2.安装需要的python版本
查看可安装版本:
1234567891011121314151617181920212223242526272829303132
[db_dlp@prd-bigdata20 ~]$ pyenv install --listAvailable versions: 2.1.3 2.2.3 2.3.7 2.4 2.4.1 2.4.2 2.4.3 2.4.4 2.4.5 2.4.6 2.5 2.5.1 2.5.2 2.5.3 2.5.4 2.5.5 2.5.6 2.6.6 2.6.7 2.6.8 2.6.9 2.7-dev 2.7 2.7.1 2.7.2 2.7.3 2.7.4 2.7.5 2.7.6 ...
安装:
1
pyenv install 3.6.3
卸载:
1
pyenv uninstall 3.6.3
查看已安装版本:
123
[db_dlp@prd-bigdata20 ~]$ pyenv versions* system (set by /home/db_dlp/.pyenv/version) 3.6.3
3.切换python版本
局部切换
python版本仅作用于指定的目录环境,切换到指定的目录下执行:
1
pyenv local 3.6.3
全局切换
1
pyenv global 3.6.3
4.pyenv安装pyhton下载安装慢的问题
使用pyenv在安装python时,由于是去python官方下载,由于总所周知的原因,经常会遇到下载缓慢的问题。
对此,可以事先下载好python包,放到~/.pyenv/cache目录即可。修改~/.pyenv/plugins/python-build/share/python-build/3.6.3文件:
123456789
cat ~/.pyenv/plugins/python-build/share/python-build/3.6.2#require_gccinstall_package "openssl-1.0.2g" "https://www.openssl.org/source/openssl-1.0.2g.tar.gz#b784b1b3907ce39abf4098702dade6365522a253ad1552e267a9a0e89594aa33" mac_openssl --if has_broken_mac_opensslinstall_package "readline-6.3" "http://ftpmirror.gnu.org/readline/readline-6.3.tar.gz#56ba6071b9462f980c5a72ab0023893b65ba6debb4eeb475d7a563dc65cafd43" standard --if has_broken_mac_readlineif has_tar_xz_support; then install_package "Python-3.6.3" "~/.pyenv/cache/Python-3.6.3.tar.gz" ldflags_dirs standard verify_py35 ensurepipelse install_package "Python-3.6.3" "~/.pyenv/cache/Python-3.6.3.tar.gz" ldflags_dirs standard verify_py35 ensurepipfi
可以提前安装好一些依赖包:
1
yum install -y gcc make patch gdbm-devel openssl-devel sqlite-devel zlib-devel bzip2-devel readline-devel
这样再次执行pyenv install 3.6.3
时,就不会出现安装慢的问题。
5.切换版本后python版本未变更
添加环境变量
1234
export PYENV_ROOT="$HOME/.pyenv"export PATH="$PYENV_ROOT/bin:$PATH"eval "$(pyenv init -)"eval "$(pyenv virtualenv-init -)"
如果变量生效报错,可能是需要安装pyenv-virtualenv
插件:
1
git clone https://github.com/yyuu/pyenv-virtualenv.git ~/.pyenv/plugins/pyenv-virtualenv
文章来源:
Author:hyperxu
link:http://www.hyperxu.com/2018/09/20/pyenv-install/
下一篇:kafka中文文档