使用pyenv体验新版本的快乐

使用pyenv体验新版本的快乐

在这里插入图片描述
注:图片来源

一、体验新版本遇到的坑

python3.10版本在10.4正式发布了,想尝试下新功能,就从官网下载了最新的3.10版本进行安装,安装一切顺利并无卡壳,但是,当开启之前的项目时,问题来了,用不了了o(╥﹏╥)o,因为项目中使用的是pipenv虚拟环境管理的包,安装了3.10版本后,默认的Python环境变成了最新的3.10,就自动的把之前的3.9环境转到了3.10中,就导致了pipenv虚拟环境瘫痪。
那么如何不影响其他项目,还能体验到新版本的快乐呢?
答案:往下看↓

二、Python版本管理神器-pyenv

在这里插入图片描述

1、pyenv是什么?

pyenv是一个forked自ruby社区的简单、低调、遵循UNIX哲学的Python环境管理工具, 它可以轻松切换全局解释器版本, 同时结合vitualenv插件可以方便的管理对应的包源.

  • pyenv侧重在python 解释器版本管理上, 比包管理更大一个层级, 使用pyenv可以方便的下载指定版本的python解释器, pypy, anaconda等, 可以随时自由的在shell环境中本地、全局切换python解释器
  • 开发的时候不需要限定某个版本的虚拟环境, 只需要在部署的时候用pyenv指定某个版本就好了
  • pyenv切换解释器版本的时候, pip和ipython以及对应的包环境都是一起切换的, 所以如果你要同时运行ipython2.x和ipython3.x多个解释器验证一些代码时就很方便
  • pyenv也可以创建好指定的虚拟环境, 但不需要指定具体目录, 自由度更高, 使用也简单

2、安装pyenv

使用brew进行安装

brew install pyenv

在配置文件中添加(.zshrc)

export PYENV_ROOR="$HOME/.pyenv"
export PATH=$PYENV_ROOT/shims:$PATH
eval "$(pyenv init -)"

使修改配置生效

source .zshrc

测试是否安装成功

pyenv --version
-----
pyenv 2.0.4

3、简单使用

# 查看当前版本
pyenv version

# 查看所有版本
pyenv versions

# 查看所有可安装的版本
pyenv install --list

# 安装指定版本
pyenv install 3.10.0b4
# 安装新版本后rehash一下
pyenv rehash

# 删除指定版本
pyenv uninstall 3.10.0b4

# 指定全局版本
pyenv global 3.10.0b4

# 指定多个全局版本, 3版本优先
pyenv global 3.10.0b4 2.7.14

4、包管理插件pyenv-virtualenv

1. brew安装
brew install pyenv-virtualenv

在这里插入图片描述

2. 安装完成功会有提示,要添加配置(跟上面一样)
eval "$(pyenv virtualenv-init -)"
3. 使用虚拟环境
# 创建一个3.10.0b4版本的名字叫做py3.10的虚拟环境
pyenv virtualenv 3.10.0b4 py3.10
# 激活环境
pyenv activate py3.10
# 关闭环境
pyenv deactivate py3.10
# 查看所有的虚拟环境
pyenv virtualenvs
# 删除虚拟环境(两种方式)
pyenv uninstall py3.10
pyenv virtualenv-delete py3.10

三、解决开头提到的问题

1、查看可下载的Python版本

pyenv install --list

在这里插入图片描述

2、下载对应的版本(选择3.10.0b4)

pyenv install 3.10.0b4
pyenv rehash

3、查看查看所有Python版本

pyenv versions

在这里插入图片描述

可以看到刚才下载的新版本
另外还可以看到,system上有一个*,代表此时的环境是用的系统默认环境,*指向哪个环境就代表使用的那个环境。

4、指定全局版本为新版本(3.10.0b4)

pyenv global 3.10.0b4

在这里插入图片描述

5、使用

pip3.10 list
python3.10

在这里插入图片描述

6、如果pyenv指向的是系统默认环境,则会提示找不到相应的环境

在这里插入图片描述

附件

参考资料
https://github.com/pyenv/pyenv
https://github.com/pyenv/pyenv-virtualenv

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值