1 背景&概述
因某些需求,需要安装 TensorFlow ,很自然地在终端敲下了以下命令:
pip install tensorflow
然后。。。
好家伙???
居然没有??
因为是 Python 3.9 ,去 pypi 搜索了,居然还真没有支持的,最高只有 Python 3.8 :
于是便考虑一个多版本的 Python 环境,碰巧就在 Github 上看到了一个 22.3k 的东西:
这就是 pyenv ,一个简单的 Python 版本管理器,可以轻松地在各个 Python 版本之间进行切换。
好了废话不说,进入正题。
2 安装
安装有两种方式:
2.1 自动安装
curl https://pyenv.run | bash
# 或
curl -L https://github.com/pyenv/pyenv-installer/raw/master/bin/pyenv-installer | bash
2.2 手动安装
手动安装大致分为三步:
2.2.1 安装 pyenv
笔者系统 Manjaro ,可以直接 yay 安装:
yay -S pyenv
其他系统的可以使用 apt search / yum search 等看看软件包仓库有没有,有的话直接安装即可,没有的话,可以 clone 安装:
git clone https://github.com/pyenv/pyenv.git ~/.pyenv
( 这一步是可选的 )接着就是编译动态 bash 扩展进行加速:
cd ~/.pyenv && src/configure && make -C src
官方解释说,不用害怕编译失败,因为仍然会正常工作。
2.2.2 配置环境变量
这一步就是把 PYENV 以及更新后的 PATH 配置成环境变量,官方文档按照 shell 类型进行了分类,根据自己情况选择即可。
2.2.2.1 bash
echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.bash_profile
echo 'export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.bash_profile
2.2.2.2 Zsh
echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.zshrc
echo 'export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.zshrc
2.2.2.3 Fish shell
set -Ux PYENV_ROOT $HOME/.pyenv
set -Ux fish_user_paths $PYENV_ROOT/bin $fish_user_paths
2.2.3 初始化
配置完环境变量后还要进行初始化操作,文档同样按 shell 类型进行了分类。
2.2.3.1 bash
echo -e 'if command -v pyenv 1>/dev/null 2>&1; then\n eval "$(pyenv init -)"\nfi' >> ~/.bash_profile
2.2.3.2 Zsh
echo -e 'if command -v pyenv 1>/dev/null 2>&1; then\n eval "$(pyenv init -)"\nfi' >> ~/.zshrc
2.2.3.3 Fish shell
echo -e '\n\n# pyenv init\nif command -v pyenv 1>/dev/null 2>&1\n pyenv init - | source\nend' >> ~/.config/fish/config.fish
2.3 测试
重新开启一个终端,输入 pyenv ,输出如下信息就表明安装成功了:
3 基本使用
- pyenv commands:查看所有pyenv命令
- pyenv exec:使用特定Python版本执行某条命令
- pyenv global:设置或查看全局Python版本
- pyenv hooks:列出给出的pyenv命令的钩子脚本
- pyenv init:配置shell环境
- pyenv install:安装某个版本的Python
- pyenv local:为某个应用设置特定的Python版本
- pyenv prefix:显示对应Python版本的路径前缀
- pyenv rehash:再哈希pyenv shims(不清楚有什么用,欢迎评论补充)
- pyenv root:显示pyenv根目录
- pyenv shell:为某个shell设置特定的Python版本(与pyenv local类似)
- pyenv shims:列出当前存在的shims(pyenv的工作原理就是在一个叫shims的目录下创建Python解释器的“假版本”,寻找Python应用时先从该目录查找)
- pyenv uninstall:卸载某个版本Python
- pyenv --version:显示pyenv版本
- pyenv version:显示当前Python版本,等价于pyenv version-name+pyenv version-file
- pyenv version-file/version-name/version-origin:当前Python版本对应的文件/名字/位置
- pyenv whence:列出已安装的一个范围内的Python版本,比如列出本地安装的Python2到Python3的版本,可以使用pyenv whence 2to3
- pyenv which:列出可执行文件的绝对路径,比如pyenv which python可以列出python命令的绝对路径
4 实际应用
虽然上面说了这么多命令,但实际使用频率高的命令并不多,主要有以下几个:
- pyenv version
- pyenv install
- pyenv global
一般安装的步骤如下,先使用
pyenv install -l
查找需要安装的 Python 版本:
这里还有一大串,就不全部截图了,比如需要安装 3.6.12 版本:
pyenv install 3.6.12
安装之后可以使用
pyenv versions
查看安装的版本,这里笔者安装有两个,一个是系统自带的 Python3.9 ,一个是 pyenv 安装的 Python3.6 :
接着使用
pyenv global 3.6.12
切换到新安装的版本:
这样就切换到了新安装的版本,如果不是全局替换而是局部替换的话可以使用 pyenv local / pyenv shell 。
要注意的是切换版本后 pip 的版本也会不一样,而且两个版本使用 pip 安装的包也是独立的:
5 参考
1、 Github-pyenv
2、 Github-pyenv-installer
3、 知乎-Python环境Memo
相关推荐:
SEO项目指的是什么,seo项目指的是什么意思 ,写个ai
ChatGPT无法加载?检查您的网络设置并尝试重启ChatGPT,解决您的使用困扰!,ai光晕制作
ChatGPT最新版本更新内容:智能对话体验再升级,更多功能与应用,ai证伪
SEO站内优化:提升网站排名的核心策略,厦门市网站优化企业
ChatGPT进不去怎么办?解决方案与技巧,轻松畅享智能对话,ai va
目前国内最好的AI人工智能软件:未来新篇章
打造高效创作体验,写文章AI软件重塑内容生产力
如何查文章AI率?全面解析AI文章检测工具及技巧
seo规范是什么,seo行业标准 ,啊龙ai音乐
OpenAI账号申诉怎么办?全方位解析解决方案,ai写作免费公众号下载
SEO地位:如何提升你的网站排名与曝光度,抢占市场先机,微营销网络推广
AI人工智能文章生成平台,释放创作无限可能
文字生成AI开启创作的新纪元
“洗稿技巧如何让你的文章脱颖而出,轻松提升内容创作水平!”,台州椒江seo企业排名
AI免费生成文章让创作变得轻松自如
ChatGPT中文版下载免费版:智能对话新时代,尽在,ai光波
AI网页效果生成:开启网站设计的新纪元,ai画线祥云
智能AI写文章:高效创作新风尚
ChatGPT198元永久会员,开启智慧之门,体验AI的极致服务!,老孙教ai
seo网页优化什么意思,seo网站优化必知的10个问答,问吧,【解决】百度不知道 ,ai识别点读机
ChatGPT40不收费版本:科技革新,智能助手助力生活与工作,ai医疗武器有哪些
AI翻译工具的革命-ChatGPT等技术让语言互通无碍,淘宝ai写作检测准吗
seo软文用什么论坛,seo软文是什么意思 ,爱字幕的AI变脸不见了
ChatGPT-4中文免费破解版:无需付费,体验最强AI助手,ai写作生成器官方下载
OpenAIGPTChatSoraOpenAIChatGPT服务在中断数小时后已恢复,ai视图线稿
ChatGLM不能搜索网页内容,你真的了解它的局限性吗?,ai修复情侣
【SEO优化全攻略】提升网站流量的终极秘籍,带你轻松玩转搜索引擎优化!,金融网站推广维护
SEO资讯:最新趋势,提升网站排名,快速突破流量瓶颈,廊坊seo推广咨询服务
ChatGPTWindows版本:让AI助手成为你的工作与生活得力助手,Ai相减变形
ChatGPT页面无法下拉?禁用浏览器扩展,轻松解决!,imba 1.6 ai
ChatGPT网页版内容显示不全的原因与解决方案,ai超级绘
为什么seo推广那么多,seo推广难吗 ,东莞ai听译平台
seo要寻找什么资源,怎么找seo ,ai插画描边
seo运营经理是什么,seo和运营的区别 ,皖妍ai宁慕晴o
SEO获客的秘诀:如何通过搜索引擎优化提升客户获取能力,厦门seo搜索优化排名
ChatGPTCanvex打不开?详细分析及解决方法助你顺利使用,ai2.5d网格线去除
软件我在AI:改变未来的智能助手
seo用到什么软件,做seo需要用到什么软件 ,皮皮ai
SEO合同:确保您网站优化成功的关键保障,微博营销推广规则最新
seo软件工具,seo软件是什么 ,AI妆容
SEO教你如何快速提升网站排名,打破竞争壁垒!,本溪seo优化排名公司
ChatGPT破解:人工智能未来的无限可能,污污AI解说
SEO找出网站流量提升的终极策略,带你走向搜索引擎巅峰!,朝阳模板网站建设价格
ChatGPT空白对话:释放创意,开启智能对话的新世界,ai重庆南坪
SEO网:让你的数字营销更加精准高效,开启网络引流新时代,丰县互联网网站推广优势
360ai问答-智能时代的全能助手,未来的智慧生活,ai生成白底
AI批量文章工具,让写作变得高效与轻松,cs机器人ai
未来工作方式!AI在线工具让效率倍增,工作变轻松
ChatGPT网页打不开?快来看看这些解决办法,轻松恢复正常访问!,ai金色包装
SEO技巧提升网站流量和排名,助力企业快速崛起,ai080206.