怎样将python更新为最新版本(如何随意切换Python版本)
怎样将python更新为最新版本(如何随意切换Python版本)
2024-09-29 09:28:56  作者:相思醉啦  网址:https://m.xinb2b.cn/sport/amg337999.html

大家好,我是小姜不知道大家在日常开发工作中是否遇到过这样一个情况:,我来为大家科普一下关于怎样将python更新为最新版本?以下内容希望对你有帮助!


怎样将python更新为最新版本

大家好,我是小姜。

前言

不知道大家在日常开发工作中是否遇到过这样一个情况:

项目A用的是Python 2.7版本开发的(可能由于历史遗留问题没有升级更新版本)

项目B是用python 3.10.4版本开发的,假设使用了requests==2.25.1版本

项目C是用Python 3.10.4版本开发的,假设使用了requests==2.27.1版本

首先第一个问题:Python版本的问题,Python 2.x 和Python 3.x 版本区别还是比较大的,版本多了不易管理。

其次第二个问题:也许requests的版本在项目B和项目C中并不会造成什么影响。但是在某些其他项目中使用了同一个包的不同版本可能会造成巨大的影响。那么此时就需要进行版本的区分,那么同一个Python版本要使用两种版本的包,显然这种场景下包管理是一个问题,在日常项目开发过程中保证不同的包环境互不干扰是很有必要,也是一个基本需求。那么最好的方式就是两个虚拟环境。

那么有没有一个最终的能解决管理不同版本的解释器的同时也能够提供一种功能来控制不同的包版本呢?当然是有的,它就是pyenv。

一、什么是pyenv?

pyenv是一个forked自ruby社区的Python环境管理工具,能够轻松的切换全局的Python解释器版本,并且他可以结合virtualenv方便的管理包。安装pyenv以后,他会在你的$PATH中增加环境变量,如下:

❯ echo $PATH/Users/allenjol/.pyenv/plugins/pyenv-virtualenv/shims:/Users/allenjol/.pyenv/shims:/usr/local/bin:/usr/local/sbin

所以,pyenv其实是控制了你的PATH环境变量来做到Python的版本切换的。它通过对PATH路径开头插入一个shims的路径来对Python实现版本的控制。

二、pyenv、virtualenv、pipenv的关系和区别

前面说了pyenv是控制Python版本的,virtualenv是比较成熟的Python的虚拟环境管理工具,而pipenv是requrests包的作者Kenneth Reitz写的一个用来作为Python的包管理的工具,它同样可以实现生成虚拟环境。本文暂不讨论这个工具,后面一篇文章会介绍它。

pyenv侧重点在Python解释器版本的管理上,你可以随意的切换你的Python版本,并且不需要指定具体的虚拟环境目录。

三、虚拟环境pyenvCentOS7下安装pyenv

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

MacOS下安装pyenv

brew updatebrew install pyenv

如果你MacOS下因为网络原因无法很好的使用brew有两种解决办法:

更换源

参考https://sre.ayunw.cn/posts/terminal_configure_proxy_with_clash/这篇文章的方式进行代理设置

设置环境变量

# bash下设置环境变量echo 'export PYENV_root="$HOME/.pyenv"' >> ~/.bashrcecho 'command -v pyenv >/dev/ || export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.bashrcecho 'eval "$(pyenv init -)"' >> ~/.bashrcsource ~/.bashrc# zsh下设置环境变量(我是iterm2 zsh)echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.zshrcecho 'command -v pyenv >/dev/ || export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.zshrcecho 'eval "$(pyenv init -)"' >> ~/.zshrcsource ~/.zshrc

查看pyenv版本

pyenv --version

四、命令行使用方法

# 查看当前版本pyenv version# 查看所有版本pyenv versions# 查看有哪些版本可供安装pyenv install --list# 安装python 3.10.4版本pyenv install 3.10.4# 安装一个版本后rehash一下,让pyenv知道管理的Python版本信息pyenv rehash# 卸载pyenv uninstall 3.10.4# 查看所有版本❯ pyenv versionssystem* 3.10.4 (set by /Users/allenjol/.pyenv/version)# 切换全局的Python版本,表示切换为系统的Python版本pyenv global system# 表示切换为pyenv的3.10.4版本pyenv global 3.10.4

五、包管理插件pyenv-virtualenv安装pyenv-virtualenvLinux下安装

git clone https://github.com/yyuu/pyenv-virtualenv.git ~/.pyenv/plugins/pyenv-virtualenv# 配置环境变量echo 'eval "$(pyenv virtualenv-init -)"' >> ~/.bash_profilesource ~/.bash_profile

MacOS下安装

git clone https://github.com/pyenv/pyenv-virtualenv.git $(pyenv root)/plugins/pyenv-virtualenv# MacOS的zshecho 'eval "$(pyenv virtualenv-init -)"' >> ~/.zshrcexec "$SHELL"# 方法二brew install pyenv-virtualenvecho 'eval "$(pyenv virtualenv-init -)"' >> ~/.zshrcexec "$SHELL"

使用pyenv-virtualenv

# 创建venv环境pyenv virtualenv venv3.10.4# 激活venvpyenv activate venv3.10.4pyenv version# 退出venv环境pyenv deactivate venv3.10.4# 删除虚拟环境pyenv uninstall venv3.10.4

当你切换了Python虚拟环境的时候,你的pip和你虚拟环境中的包都切换到你的目标环境中去了。和原先的环境没有任何关系。因此这样它得到了很好的python解释器环境和包的版本隔离。

公众号:运维开发故事

github:https://github.com/orgs/sunsharing-note/dashboard

爱生活,爱运维

关注我,不定期维护优质内容

温馨提示

如果你喜欢本文,请朋友圈,想要获得更多信息,请关注我。

........................

  • 杨幂颜值变化过程(杨幂的颜值变迁史)
  • 2024-09-29杨幂的颜值变迁史杨幂应该也算是娱乐圈越来越好看的典范了小时候的杨幂古灵精怪的,从眉眼间还是能看到现在的样子稍微大一点的时候,逐渐长开,浓眉大眼,看着很可爱,但这时的“水滴鼻”已经显现出来16岁时,拍摄自己长大后的第一。
  • 法考证怎么领取补贴(3地更新证书领取动态)
  • 2024-09-293地更新证书领取动态21法考生每日一问:司法部爸爸,到底什么时候才能领到证呀?别急,跟着合合菌一起看看有什么最新消息吧!01法考证书领取最新进展1、福建司法厅最新回复4月12日,热心小伙伴咨询福建司法厅法考领证事宜:您好。
  • 外国人工智能机器人测试(美研究人员公布)
  • 2024-09-29美研究人员公布新华社华盛顿7月7日电(记者周舟)美国麻省理工学院近日发布公报称,该校研究人员最新公布了一种“盲动”机器人的技术细节这种机器人不需要借助视觉系统,可在崎岖地形中穿行跳跃,有望在危险工作环境中得到广泛应。
  • 资料员证怎么报考需要什么条件呢(资料员证怎么报考)
  • 2024-09-29资料员证怎么报考料员是建筑行业八大员之一,主要负责的是收集和整理建筑工程的资料,需要考取证书之后上岗下面就说说下证书的报考方法和报考费用资料员证怎么报考的  想要参加资料员的考试,需要通过培训机构个人是没有办法报名的。
  • 一个资深吃货吃遍天下(这个吃货)
  • 2024-09-29这个吃货一月一度的CPI又来咯!国家统计局12日公布,今年4月份的CPI同比上涨3.3%CPI是啥意思?3.3%是好是不好?为什么说CPI是“吃货”呢?今天翻译君就来跟大家聊聊CPI吧图片来源:国家统计局CP。
  • 吃木瓜真的能丰胸吗有科学依据吗(吃木瓜真的能丰胸吗)
  • 2024-09-29吃木瓜真的能丰胸吗答:木瓜对丰胸的作用只是传说,并无科学依据以一颗平常心做到均衡饮食、适当锻炼、佩戴合适的胸罩就好最近这几年“有沟必火”这个词真的是深入人心,生活中拥有一对自然挺拔乳房更是许多女性的梦想许多女明星被发现。
  • 广西王岚个人资料(对话决胜零距离王岚)
  • 2024-09-29对话决胜零距离王岚这几天,央视八套上映的军旅剧《决胜零距离》持续霸榜一群热血沸腾的汉子演绎出新时代陆军特战队员的忠勇与使命随着铁血英雄的逐一登场,两位巾帼不让须眉的女军人也神秘出现,其中一位就是青年演员王岚饰演的军医华。
  • 乡村爱情谢飞机第几部出来的(乡村爱情11中谢飞机)
  • 2024-09-29乡村爱情11中谢飞机《乡村爱情》系列剧可以说是农村题材电视剧的一个奇迹,之所以说《乡村爱情》系列剧是一个奇迹不仅仅是因为它的长度,更是因为它的受欢迎程度和造星能力众所周知,《乡村爱情》系列剧是本山传媒出品,里面的演员几乎。
  • 天空奇妙的真实故事(云大空的故事匣)
  • 2024-09-29云大空的故事匣《一个人的梦境》  “你叫什么呀?”  “你为什么可以飘在空中呢?”  小女孩小心翼翼地伸手触碰,凉凉的,软乎乎的  她在草原上醒来,没有任何人的大草原  她一定是在做梦吧——小女孩想着  她并不慌乱。
  • 李商隐几岁写无题(昨夜星辰昨夜风)
  • 2024-09-29昨夜星辰昨夜风钱选十八学士聚会图卷局部昨夜星辰昨夜风,画楼西畔桂堂东身无彩凤双飞翼,心有灵犀一点通隔座送钩春酒暖,分曹射覆蜡灯红嗟余听鼓应官去,走马兰台类转蓬唐代李商隐《无题·昨夜星辰昨夜风》赏析全诗以心理活动为出。