赞!优雅的Python多环境管理神器!易上手易操作!

前言

Python 的不同版本之间常常存在依赖关系和兼容性问题,为了方便开发人员在 不同项目中使用不同的版本 。

如果大家使用过Python版本管理工具,肯定大多数人使用的都是Anaconda,它是一个优秀的数据科学开发环境,本身也提供了丰富的Python工具集合和常用的科学计算与数据分析库。但Anaconda体积比较庞大,也携带有图形化界面,它不算一个轻量级的Python版本管理工具。

所以 pyenv 这一简单而强大的 Python 版本管理工具应运而生。这个工具小编已经用了两年多了,感觉使用体验上都还不错,故本文将介绍 pyenv 的基本概念、安装方法以及使用和注意事项,帮助开发者更好地管理 Python 版本。

一、pyenv 简介

pyenv 是一款轻量级的 Python 版本管理工具,可以在同一台机器上同时安装多个 Python 版本,并且可以根据应用程序或项目的需求进行快速切换。它的主要功能包括版本的安装、卸载、切换和全局默认版本的设置。

提示:pyenv不大适合Windows系统使用,但也可以安装使用;主要适用于MacOS、Linux等unix系统

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

pyenv和主流的pipenv、virtualenv的关系

pipenv 是 requests 作者 Kenneth Reitz大神写的一个python虚拟环境管理工具, 结合了pip和virtualenv的功能, 侧重点还是在包环境管理上, 使用思路是先创建一个指定python版本的环境, 然后在此环境上安装相应的包, 好评不错, 看到很多大牛都在推荐。

virtualenv 是一个比较传统成熟的虚拟环境管理工具了, 用的人也比较多, 思路也是创建虚拟环境, 然后安装相应的包, 要进入环境就source一下activate脚本激活一下, 尽管成熟, 但也经常由于各种原因在项目部署时老是容易出现一些环境问题。

二、pyenv 安装

pyenv 的主流安装方式有两种,一是按照官方提供的方法下载安装,二是通过行业大佬们写好的一键安装脚本安装。

1、官方Git方式安装

对于MacOS用户,可以使用Homebrew来直接安装pyenv:

brew update   brew install pyenv

当然也可以使用第一种 git 下载pyenv

git clone https://github.com/pyenv/pyenv.git ~/.pyenv

除此之前还需要下载pyenv虚拟环境包管理工具pyenv-virtualenv

$ git clone https://github.com/pyenv/pyenv-virtualenv.git ~/.pyenv/plugins/pyenv-virtualenv

然后我们在Mac或Linux系统shell环境变量配置文件中配置,配置如下(.zshrc/.bashrc):

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

最后,在配置文件前执行source 命令, 使其生效。

输入pyenv --version测试一下,出现如下画面即为安装成功!

2、三方一键安装

可以使用大佬们封装好的一键安装脚本进行安装:

curl -L https://github.com/pyenv/pyenv-installer/raw/master/bin/pyenv-installer | bash

安装过程可能会有提示,根据提示安装即可。

3、pyenv 卸载

pyenv 卸载方式很简单,直接删除pyenv目录即可。

rm -rf ~/.pyenv

同时需要将配置文件(.zshrc或.bashrc)中pyenv相关的删除掉:

export PATH="~/.pyenv/bin:$PATH"   eval "$(pyenv init -)"   eval "$(pyenv virtualenv-init -)"

三、pyenv 环境管理

1、解释器版本安装与切换

查询当前可安装的版本

pyenv install --list

输出:

安装指定版本(安装完成后需要pyenv rehash):

pyenv install 3.8.12

不过我不喜欢这种安装方式,每次切换还需要输入版本号,很麻烦,而且谁没事记版本号,后面项目多了,环境多了,同版本又怎么区分。这时候就用到我们pyenv的虚拟环境包管理进行安装,他就多了一个虚拟环境名称,跟Anaconda一样。

pyenv virtualenv 3.10.7 chatgpt_env

查询已安装的Python版本

 pyenv versions

输出:

指定全局版本,当然也可以指定多个全局版本,前面的优先

pyenv global normal_work     pyenv global normal_work chatgpt_env`

指定shell版本,意思是在哪个目录下执行设置的版本,下次进入该目录会自动切换到该Python版本,多项目操作时,不要再手动切换了

pyenv shell normal_work

删除指定版本

pyenv uninstall normal_work

只查看已安装的虚拟环境列表

pyenv virtualenvs

激活虚拟环境

pyenv activate normal_work

退出虚拟环境

pyenv deactivate

四、pyenv安装Anaconda

pyenv其实内部集成了Anaconda的软件包,在上面可安装列表中也可以看到有anaconda的版本可供下载安装。而且还有很多的版本,miniconda的也有。

使用pyenv创建anaconda的虚拟环境

pyenv virtualenv miniconda-3.0.5  conda_demo_env

我们进入conda的虚拟环境

pyenv activate conda_demo_env

之后可以直接使用conda命令来管理该环境

conda install xxx

五、总结

1、pyenv极大程度的利用了环境变量工具,通过在环境变量前面插入新路径来实现python解释器版本管理和虚拟环境管理。

2、pyenv相比其他工具,更加侧重在 python 解释器版本管理上, 比包管理更大一个层级, 使用pyenv我们可以方便的下载指定版本的python解释器, pypi, anaconda等, 可以随时自由的在shell环境中本地、全局切换python解释器。

3、开发的时候不需要限定某个版本的虚拟环境, 只需要在部署的时候用pyenv local指定当前项目目录使用某个版本就好了,很方便。

4、pyenv也可以创建好指定的虚拟环境, 但不需要指定具体目录, 自由度更高, 使用也简单。

注意:pyenv 不支持 Windows 系统。Windows 上有一个 pyenv 的替代品,是 pyenv-win 。它用来在多个安装的 Python 版本之间进行切换。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
在七夕节使用Python进行表白的方式被称为"Python七夕节表白"。根据引用和引用的描述,Python七夕节表白是一种使用Python编程语言编写的程序,旨在通过代码展现情感和表达爱意。这个程序可以被情侣们用来互相表白和庆祝七夕节。它可以根据具体的情况和需求,生成一些浪漫的文字或者图形,将爱意传达给对方。通过这种方式,情侣们可以用创意和技术结合的方式来表达他们的爱意。对于学习Python的人来说,这也是一个很好的练习项目,可以提高他们的编程技能。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [程序员的七夕用30行代码让Python化身表白](https://download.csdn.net/download/weixin_38733382/12860807)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *2* *3* [利用 Python 写个七夕表白](https://blog.csdn.net/weixin_46089319/article/details/108246742)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

孜孜孜孜不倦

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值