Linux通过Pyenv安装多版本Python

一. pyenv安装

官方安装教程 https://github.com/pyenv/pyenv

1. 安装命令

1
2
3
4
# 若是网络有问题,设置好代理
curl -L https://github.com/pyenv/pyenv-installer/raw/master/bin/pyenv-installer | bash

# 运行后若提示添加环境变量,根据下方步骤进行

2. 环境变量

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
# 环境变量
echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.bashrc
echo 'command -v pyenv >/dev/null || export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.bashrc
echo 'eval "$(pyenv init -)"' >> ~/.bashrc
echo 'eval "$(pyenv virtualenv-init -)"' >> ~/.bashrc

echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.profile
echo 'command -v pyenv >/dev/null || export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.profile
echo 'eval "$(pyenv init -)"' >> ~/.profile
echo 'eval "$(pyenv virtualenv-init -)"' >> ~/.profile

echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.bash_profile
echo 'command -v pyenv >/dev/null || export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.bash_profile
echo 'eval "$(pyenv init -)"' >> ~/.bash_profile
echo 'eval "$(pyenv virtualenv-init -)"' >> ~/.bash_profile

exec "$SHELL"

3. 更新命令

1
2
# Update:
pyenv update

二. pyenv使用

1. version

查看当前系统使用的python版本

1
pyenv version

2. versions

查看当前系统拥有的python版本(system代表当前系统的python版本号)

1
pyenv versions

3. install –list

查看可以安装的版本

1
pyenv install --list

4. install

安装指定版本

1
pyenv install 3.9.15

5. uninstall

卸载指定python

1
pyenv uninstall 3.9.15

6. global

全局环境,为了不破坏系统默认环境,不建议使用global命令

1
pyenv global 3.9.15

7. local

仅对当前目录及其子目录生效,告诉目录使用版本3.9.15

1
pyenv local 3.9.15

8. rehash

重建环境变量,每当你增删python版本或增删带可执行性的包(如pip)以后,都应该执行一次本命令pyenv rehash

1
pyenv rehash

9. virtualenv

python虚拟环境,创建指定版本的virtualenv

1
2
pyenv virtualenv <版本> <名称> 
pyenv virtualenv 3.9.15 venvname

10. virtualenvs

查看所有存在的virtualenv

1
pyenv virtualenvs

11. activate

手动激活指定virtualenv

1
pyenv activate <名称>

12. deactivate

手动关闭当前已被激活的virtualenv

1
pyenv deactivate

13. 删除指定virtualenv(三种方法)

1
2
3
4
5
6
7
8
# 方法一:删除文件
#直接删除$(pyenv root)/versions和$(pyenv root)/versions/{version}/envs中的指定目录

# 方法二:使用uninstall命令
pyenv uninstall <名称>

# 方法三:使用virtualenv-delete命令(建议)
pyenv virtualenv-delete <名称>

三. 多版本python使用pip

若是报错,应该是缺少权限,加上sudo

1. pip install

通过指定python的pip安装第三方库

1
2
3
4
5
6
7
8
# 多个例子
python3.9 -m pip install scrapy

python3.9 -m pip install -r requirements.txt

~/.pyenv/versions/3.9.14/bin/python3.9 -m pip install scrapy

~/.pyenv/versions/3.9.14/envs/asset_manage_venv/bin/python3.9 -m pip install scrapy

2. upgrade pip

更新指定python的pip

1
2
3
4
5
6
7
8
# 多个例子
python3.9 -m pip install --upgrade pip

~/.pyenv/versions/3.9.14/bin/python3.9 -m pip install --upgrade pip

~/.pyenv/versions/3.9.14/envs/asset_manage_venv/bin/python3.9 -m pip install --upgrade pip

~/.pyenv/versions/asset_manage_venv/bin/python3.9 -m pip install --upgrade pip

3. pip换源

1
2
3
4
5
6
pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple

# 清华:https://pypi.tuna.tsinghua.edu.cn/simple/
# 阿里云:http://mirrors.aliyun.com/pypi/simple/
# 豆瓣:http://pypi.doubanio.com/simple/
# 中科大:https://mirrors.bfsu.edu.cn/pypi/web/simple/

Linux通过Pyenv安装多版本Python
http://www.yangchao.me/posts/103/
作者
小不点
发布于
2022年11月30日
许可协议