ubuntu16配置python环境-pyenv 并安装3.6.8

什么是pyenv:
Python 2和Python 3之间存在着较大的差异,这就需要对python的版本进行管理,除此之外还需要对不同的软件包进行管理。一般开发环境中,使用两个工具:pyenv和virtualenvwrapper 。前着用于管理python版本,后者用于管理不同工作环境。
第一步:换源

sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak

更换国内源(阿里源)

vim /etc/apt/sources.list

https://developer.aliyun.com/mirror/ubuntu?spm=a2c6h.13651102.0.0.3e221b11Lf1ccH

sudo apt update

第二步:安装一些依赖(关于pyenv)

sudo apt install gcc zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel git

第三步:安装pyenv并配置环境变量

git clone git://github.com/yyuu/pyenv.git ~/.pyenv
或者
curl -L https://github.com/pyenv/pyenv-installer/raw/master/bin/pyenv-installer | bash

echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.bashrc
echo 'export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.bashrc
echo 'eval "$(pyenv init -)"' >> ~/.bashrc
exec $SHELL -l

查看可以通过pyenv安装的python版本

pyenv install --list

第四步:通过pyenv安装指定版本python
首先安装为了保证python正确安装的一些依赖

sudo apt-get install libc6-dev gcc
sudo apt-get install make build-essential libssl-dev zlib1g-dev 
sudo apt-get install libbz2-dev libreadline-dev libsqlite3-dev wget curl 
sudo apt-get install llvm libncurses5-dev libncursesw5-dev

第一种安装方法:

pyenv install 3.6.8 -v

因为pyenv会自动到github上下载,速度超慢,所以一般会选择使用curl或者wget下载到~/.pyenv/cache下,而且经常会超时报错

第二种安装方法:

cd ~/.pyenv
sudo mkdir cache
wget -c http://mirrors.sohu.com/python/3.6.8/Python-3.6.8.tar.xz -P  ~/.pyenv/cache/
pyenv install 3.6.8 -v

刷新pyenv数据库

pyenv rehash

切换全局python版本

pyenv global 3.6.8

查看当前安装的python的版本:

pyenv versions

第五步:python的虚拟环境部署
为了对不同的项目进行隔离,使每个项目使用独立的python解释器及依赖,需要配置python虚拟环境.
每个项目都有一个单独的python虚拟环境, 这样项目之前的python环境相互隔离, 便于使用和管理!
使用pyenv-virtualenv创建python虚拟环境,实质上是在~/.pyenv/versions/3.6.8/下创建一个文件夹evns,存放该虚拟环境python的解释器;
并且在~/.pyenv/下创建一个软连接,该虚拟环境可以通过pyenv进行管理。
举例:创建某个项目的虚拟环境(test为环境名)

pyenv virtualenv 3.6.8 test

查看, 发现在~/.pyenv/versions目录下会有一个test虚拟环境的软连接

ll ~/.pyenv/versions/

lrwxrwxrwx 1 root root 41 Dec 17 14:53 test -> /root/.pyenv/versions/3.6.8/envs/test

查看python虚拟环境

pyenv virtualenvs

切换python虚拟环境

pyenv activate test

或者

source activate test

最后,使用"source deactivate" 命令 或者 "pyenv deactivate"命令 退出python虚拟环境

官方安装教程

你可能感兴趣的:(pyenv,python,虚拟环境,ubuntu16)