pyenv安装时常见问题解决


pyenv是管理不同版本python解释器的工具,可以轻松地在多个版本的Python之间切换。本文示例使用pyenv安装3.6.0、3.9.0版本解释器。

1、pyenv安装

1.1、电脑系统

操作系统版本为macOS 10.13.2

1.2、使用brew工具安装

打开terminal使用brew install执行安装命令,但会遇到更新Homebrew,这会花费较长时间

brew install pyenv

在这里插入图片描述
通过临时设定环境变量,可以在当前shell中执行brew install命令时不自动更新,直接下载并安装软件包

export HOMEBREW_NO_AUTO_UPDATE=true

在这里插入图片描述

1.3、源码安装

使用git命令在github中下载项目源码安装。下载后设置环境变量,并激活.bash_profile文件,执行pyenv命令展示相关信息即安装成功

mkdir ~/.pyenv
git clone https://github.com/pyenv/pyenv.git ~/.pyenv
ls .pyenv/
echo $HOME
echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.bash_profile
echo 'export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.bash_profile
ls .pyenv/bin/
source .bash_profile
pyenv
pyenv --version  # 获取pyenv版本号

在这里插入图片描述

1.4、添加"pyenv init -"到shell

添加"pyenv init -"到.bash_profile文件,启用shims和autocompletion

echo -e 'if command -v pyenv 1>/dev/null 2>&1; then\n eval "$(pyenv init -)"\n fi' >> ~/.bash_profile

2、安装python解释器

2.1、在线安装

pyenv安装3.6.0版本解释器的默认下载链接,下载速度缓慢
在这里插入图片描述

2.2、离线安装

使用国内源下载解释器到 ~/.pyenv/cache目录下,离线安装解释器

淘宝源:https://npm.taobao.org/mirrors/python/3.6.0/Python-3.6.0.tar.xz
搜狐源:http://mirrors.sohu.com/python/
ls ~/.pyenv/
mkdir ~/.pyenv/cache  # cache目录不存在则创建
wget https://npm.taobao.org/mirrors/python/3.6.0/Python-3.6.0.tar.xz -P .pyenv/cache/
pyenv install 3.6.0

在这里插入图片描述
以上面两种方式安装3.9.0版本解释器
在这里插入图片描述

3、pyenv常用命令

安装解释器:pyenv install 版本号
卸载解释器:pyenv uninstall 版本号

global 全局设置(尽量不要用):pyenv global 版本号
解释:global是作用于全局;root用户不要使用global,可以使用local。

3.1、应用到本地

# 设置当前目录开始向下递归都继承该版本号
pyenv local 版本号

在这里插入图片描述

3.2、应用到当前shell

# 设置该版本号应用于当前shell会话
pyenv shell 版本号

在这里插入图片描述
在这里插入图片描述

3.3、查看已安装python版本

pyenv versions

在这里插入图片描述

4、相关知识

4.1、pyenv能做什么

1,基于每个用户更改全局Python版本
2,对每个项目的Python版本提供支持
3,允许通过环境变量覆盖Python版本
4,一次搜索多个版本的Python

4.2、pyenv运行

在一个高的级别上,pyenv使用shim可执行文件注入到PATH来拦截Python命令;确定您的应用程序指定了哪个Python版本,并将命令传递给正确的已安装Python版本。

4.3、PATH

当运行诸如python或pip等命令时,操作系统将在目录列表中搜索以查找具有该名称的可执行文件。此目录列表位于一个名为PATH的环境变量中,列表中的每个目录都用冒号分隔

/usr/local/bin:/usr/bin:/bin

PATH从左到右搜索目录,因此列表开头目录中的匹配可执行文件优先于结尾目录中的另一个可执行文件。在这个例子中, /usr/local/bin目录将被搜索的第一个,然后是/usr/bin,然后是/bin。

4.4、shims

pyenv通过在你的PATH前插入shims目录来工作:

$(pyenv root)/shims:/usr/local/bin:/usr/bin:/bin

Shim是轻量级的可执行文件,它们只是将命令传递给pyenv。因此在安装了pyenv的情况下,运行pip时操作系统将执行以下操作:

1,在PATH中搜索名称为pip的可执行文件
2,在PATH开头的shims目录中,找到名称为pip的shim文件
3,运行名称为pip的shime文件,shime将命令传递给pyenv
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值