Pyenv安装

Posted rivendare

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Pyenv安装相关的知识,希望对你有一定的参考价值。

pyenv安装方式

 

git安装

1、安装git

# yum install git -y

 

2、安装python编译依赖

# yum -y install gcc make patch gdbm-devel openssl-devel sqlite-devel readline-devel zlib-devel bzip2-devel

 

3、创建用户python

# useradd python

# echo python | passwd python --stdin

# su - pytho

 

4、试用python用户登录后安装pyenv

# curl -L https://github.com/pyenv/pyenv-installer/raw/master/bin/pyenv-installer | bash

如果curl出现 curl:(35) SSL connect error 是nss版本过低,需要更新

# yum update nss

 

5、在python用户的-/.bash_profile中已添加以下内容

# vi /home/python/.bash_profile 
export PATH="/home/python/.pyenv/bin:$PATH"

eval "$(pyenv init - )"

eval "$(pyenv virtualenv-init - )"
# source ~/.bash_profile

这样当用户启动的时候,会执行用户的.bash_profile中的脚本,就会启动pyenv

安装好的pyenv就在~/.pyenv目录中

 

pyenv的使用

python 版本及path路径

# python -V

# echo $PATH

 

pyenv命令

# pyenv help install

 

列出所有可用版本

# pyenv install --list

 

在线安装指定版本

# pyenv install 3.5.3

# pyenv versions

 

使用缓存方式安装

在~/.pyenv目录下,新建cache目录,放入下载好的待安装版本文件

不确定哪一个文件,把下载好的xz、gz、tbz这几个文件都放在cache目录中

# pyenv install 3.5.3 -v

# pyenv install 3.6.4 -v

 

pyenv的python版本控制

version显示当前的python版本

versions显示所有可用的版本和当前版本

 

global全局设置

# pyenv global 3.5.3

可以看到所有受pyenv控制的窗口中都是3.5.3的版本了

这里用global是作用于非root用户python用户上,如果是root用户安装,不要使用global,否则影响太大,比如这里使用的centos6.5就是python2.6,使用了global就成了3.x,会带来很不好的影响

# pyenv global system

 

shell会话设置

影响只作用于当前会话

# pyenv shell 3.5.3

 

local 本地设置

使用pyenv local设置从当前工作目录开始向下递归都继承这个设置

# pyenv local 3.5.3

 

取消local设置

# pyenv local --unset

 

virtualenv虚拟环境设置

为什么要使用虚拟环境?

因为刚才使用的python环境都是一个公共空间,如果多个项目使用不同python版本开发,或使用不同的python版本部署运行,或者使用同样的版本开发但不同项目视同了不同版本的库,等等这些问题都会来带冲突,最好的解决办法就是每一个项目独立运行自己的“独立小环境”中

使用插件,在plugins/pvenv-virtualenv中

# pyenv virtualenv 3.5.3 haha353

使用python3.5.3版本创建出一个独立的虚拟空间

# pyenv versions

 




以上是关于Pyenv安装的主要内容,如果未能解决你的问题,请参考以下文章

Ubuntu系统安装Pyenv

centos中pyenv安装

python多版本管理工具--pyenv安装和使用

pyenv安装

linux 安装pyenv环境

如何在 microsoft windows 10 中使用 pyenv/pyenv-win 安装 python 版本?