一、Ubuntu安装pyenv
- 如果电脑没有安装git,则需要首先安装
sudo apt install git
- 如果电脑不能翻墙,则使用第一条命令 ,如果可以使用第二条命令
第一条:
git clone https://github.com/yyuu/pyenv.git ~/.pyenv
第二条:
curl -L https://raw.githubusercontent.com/pyenv/pyenv-installer/master/bin/pyenv-installer | bash
通过以上操作,会把pyenv安装到当前用户的~/.pyenv目录下
- 将一下内容放到 .bashrc的最后
export PATH=~/.pyenv/bin:$PATH
export PYENV_ROOT=~/.pyenv
eval "$(pyenv init -)"
- 激活pyenv
source .bashrc
二、 安装python
- 安装python依赖包
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
sudo apt-get update
- 安装python版本
首先我们可以查看一下有哪些版本的python 可以安装。会列出能所有安装的python版本
pyenv install --list
- 安装python版本
pyenv install 3.7.0
- 更新数据库
pyenv rehash
- 查看安装的python版本
pyenv versions
- 切换python版本
# xxx表示要切换的版本
**有三种切换方式 glocal local shell**
1. glocal 全局环境,在未再次使用 glocal切换环境之前,一直使用此环境。
2. local 本次登录环境。重启后,则环境失效,并返回当前glocal的环境。
3. shell 局部(临时)环境。关闭命令行窗口,则环境失效,并返回当前glocal的环境。
pyenv glocal xxx
- 卸载某个版本
pyenv uninstall xxx
三 、安装之后通过virtualenv使用
virtualenv
python虚拟环境。将一个目录建立为一个虚拟的python环境, 这样的话, 用户可以建立多个虚拟环境, 每个环境里面的python版本可以是不同的, 也可以是相同的, 而且环境之间相互独立。
首先我们可以用pyenv 安装多个python 版本, 比如安装了2.5, 2.6, 3.3 三个版本。 用户可以随意切换当前默认的python版本。 但这时候, 每个版本的环境仍是唯一的, 如果我们想在环境中安装一些库的话, 还是会导致这个版本的环境被修改。 这个时候, 如果我们用virtual env去建立虚拟环境, 就可以完全保证系统路径的干净。无论你在虚拟环境中安装了什么程序, 都不会影响已安装版本的系统环境
来源:https://www.jianshu.com/p/158d880b2d41
利用virtualenv 创建虚拟python环境
- pyenv已经帮我们以plugin的形式安装好了。如果未安装,则需要我们手动安装一下
git clone https://github.com/pyenv/pyenv-virtualenv.git $(pyenv root)/plugins/pyenv-virtualenv
- 但此时还不能使用。我们需要将以下命令添加到 ~/.bashrc文件结尾,这样就可以在命令行使用virtualenv了
echo 'eval "$(pyenv virtualenv-init -)"' >> ~/.bashrc
source ~/.bashrc
- 通过一下命令创建虚拟环境
这条命令在本机上创建了一个名为env370的python虚拟环境,这个环境的真实目录位于:~/.pyenv/versions/
pyenv virtualenv 3.7.0 env370
注:注意,命令中的 ‘3.7.0’ 必须是一个安装前面步骤已经安装好的python版本, 否则会出错
- 然后我们可以继续通过 ‘pyenv versions’ 命令来查看当前的虚拟环境, 结果如下:
* system (set by /home/zhai/.pyenv/version)
3.7.0
env370
- 激活虚拟环境
pyenv activate env370
- 如果要切换回系统环境, 运行这个命令即可
pyenv deactivate
- 删除这个虚拟环境,只要直接删除它所在的目录就好:
rm -rf ~/.pyenv/versions/env370