本篇文章主要围绕Pyenv, Virtualenv, Virtualenvwrapper三个Python库展开讨论。
熟悉Python的朋友一定知道python虚拟环境, 它可以让我们在不同项目中拥有各自独立的依赖库空间, 从而保证各个项目的干净整洁,而笔者在工作中需要负责多个项目,因为历史原因有的项目还在使用python2系列的版本,有的则使用python3系列的版本。所以我需要一种方式可以在同一台电脑上可以安装多个不同版本的python来适应我的工作需求,那么pyenv就是我理想的管理工具。
Pyenv 简介
pyenv是一个python版本管理工具,可以方便用户在不同的python版本间切换,例如我电脑上已经安装了python2.7,我还想安装python3.7和3.8,那么通过pyenv可以非常方便的实现这种需求。
pyenv的作者是一位日本人,据说因为他本人不喜欢window平台, 故pyenv只支持linux系和mac平台, 不光现在不支持windows以后也不支持,所以在windows上开发的小伙伴无福消受了。
Pyenv官网: https://github.com/pyenv/pyenv
Pyenv安装
以下案例是在Centos6.7 x64系统中操作。
一. 安装git
yum install git -y
二. 安装Python 编译依赖
yum -y install gcc make patch gdbm-devel openssl-devel sqlite-devel readline-devel zlib-devel bzip2-devel
三. 创建用户Python
$ useradd python
$ echo python | passwd python --stdin
四. 使用python用户登录后安装Pyenv
$ su python
在线安装:
我们可以直接通过pyenv-installer插件来安装, PS: 在 https://github.com/pyenv/pyenv-installer 有安装文档,下载的 pyenv-installer 是一个shell脚本。
$ curl -L https://github.com/pyenv/pyenv-installer/raw/master/bin/pyenv-installer | bash
这里需要注意:如果curl出现 curl: (35) SSL connect error ,这是nss版本低导致的问题,可以配置一个有较新包的yum源, 然后更新nss
$ vi /etc/yum.repos.d/Centos-6.repo
[updates]
name=CentOS-Updates
baseurl=https://mirrors.aliyun.com/centos/6/os/x86_64
gpgcheck=0
$ yum update nss
离线安装
如果上面的在线安装失败可以尝试这种方式,直接clone github仓储到指定目标文件目录
$ git clone https://github.com/pyenv/pyenv.git ~/.pyenv
$ git clone https://github.com/pyenv/pyenv-virtualenv.git ~/.pyenv