摘自:文章
pyenv可以管理不同的python版本
1、安装pyenv的依赖库
# 执行以下命令安装依赖库
# 更新源
sudo apt-get update
# 更新软件
sudo apt-get upgrade
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
2、安装pyenv
curl https://pyenv.run | bash
3、配置环境变量
# 将以下三条语句写入 ~/.bashrc
vim ~/.bashrc
export PATH="~/.pyenv/bin:$PATH"
eval "$(pyenv init -)"
eval "$(pyenv virtualenv-init -)"
使配置生效:
source ~/.bashrc
测试:
# 如果路径第一个结尾是 shims 则表示成功:
echo $PATH
/home/python/.pyenv/plugins/pyenv-virtualenv/shims:/home/python/.pyenv/shims:
/home/python/.pyenv/bin:/home/python/bin:/home/python/.local/bin:/usr/local/sbin:
/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin
4、一些其他指令
# 升级pyenv
pyenv update
# 卸载pyenv
# pyenv安装的默认路径是~/.pyenv,如果自定义路径则删除自定义的文件夹
rm -fr ~/.pyenv
# 并删除.bashrc下面的环境变量
export PATH="~/.pyenv/bin:$PATH"
eval "$(pyenv init -)"
eval "$(pyenv virtualenv-init -)"
5、使用pyenv
# 查看pyenv当前支持哪些python版本
pyenv install --list
# 列出本地pyenv中所有可用的python版本
pyenv versions
# 选择指定的python版本
pyenv global 3.x.x
# 切换版本后,与版本相关的依赖也会一起切换
6、删除指定的python版本
pyenv uninstall 3.7.3
remove /home/python/.pyenv/versions/3.7.3? y
# 列出删除 3.7. 3后,pyenv 中所有可用的 Python 版本
pyenv versions
7、安装python
# 安装python需要的依赖包
sudo apt-get install libc6-dev gcc
sudo apt-get install -y make build-essential libssl-dev zlib1g-dev libbz2-dev libreadline-dev libsqlite3-dev wget curl llvm
# 安装python方式一
pyenv install 3.8.5 -v
# -v以日志模式显示安装过程
我自己使用的方式一
# 安装python方式二
cd ~/.pyenv
sudo mkdir cache
sudo wget -c https://npm.taobao.org/mirrors/python/3.8.5/Python-3.8.5.tar.xz -P ~/.pyenv/cache/
pyenv install 3.8.5 -v
#这是淘宝源,也可以更换其他源
# 更新pyenv数据库
pyenv rehash
# 列出所安装的python版本
pyenv versions
# 切换版本
pyenv global 3.8.5
# 验证版本
python
注意:使用 pyenv 管理 Python,必须是用 pyenv 安装的 Python 才行,系统以前有的,需要重新用 pyenv 安装;
使用 pip 安装第三方模块时会安装到 ~/.pyenv/versions/xxx 下,不会和系统模块发生冲突;
使用 pip 安装模块后,可能需要执行 pyenv rehash 更新数据库。
以下摘自chatgpt,可以成功:
1、安装完python 之后,创建虚拟环境
pyenv virtualenv 3.6.5 myenv36
2、激活虚拟环境
pyenv activate myenv36
3、退出虚拟环境
deactivate
python3 -m venv myenv
source myenv/bin/activate
source myenv/bin/activate
deactivate