如何中mac上安装多版本python并配置PATH

摘要

mac 默认安装的python是 python3,但是如果我们需要其他python版本时,该怎么办呢?

例如:需要python2 版本,如果使用homebrew安装会提示没有python2。同时使用python --version 会发现commond not found。

所以本文主要解决以下几个问题:

  1. 在mac上如何安装各种版本的python。
  2. 在mac上如何管理多个版本的python。
  3. 在mac上如何切换python版本。
  4. 在mac的终端执行:python --version 提示 commond not found 问题。
  5. 在mac上如何配置环境变量PATH。
  6. 在mac上为什么需要配置PATH。

简介:

为了解决上述问题,我们会使用homebrew 安装 pyenv。pyenv 是一个管理python的工具。pyenv官方地址:https://github.com/pyenv/pyenv。当然python 版本管理工具还有其他各种各类的,大家可以根据自身实际情况决定使用哪个。本文主要使用pyenv。以及解决没有python commnond问题。解释为什么需要配置PATH。PATH的作用等等。

python 官方地址:https://www.python.org/downloads/macos/

安装

python 复制代码
brew install pyenv

如果觉得安装缓慢,或者总是失败可以切换homebrew的镜像源。不适用外网,使用内网。

配置pyenv 的PATH

python 复制代码
export PYENV_ROOT="$HOME/.pyenv"
export PATH="$PYENV_ROOT/bin:$PATH"
eval "$(pyenv init -)"

📢 该配置可在.bash_profile、.zshrc等文件中添加,根据实际情况进行添加。apple 芯片需要在.zshrc添加 。 inter 芯片 是 .bash_profile。

PYENV_ROOT="$HOME/.pyenv"

当你在终端(terminal)中执行pyenv init时会自行配置,就是声明一个变量PYENV_ROOT。$HOME 指的是当前用户根目录。

export PATH="PYENV_ROOT/bin:PATH"

PYENV_ROOT 是指的上一步设置的路径的变量,再加上bin,即指的pyenv的可执行路径。 :PATH 是指在后面追加原来PATH设置的路径,如果不追加会把前面的PATH值给覆盖了。

把pyenv 的可执行路径设置到shell查找路径中。当执行pyenv时,会按照所配置的路径进行查找可执行文件。

eval "$(pyenv init -)"

  1. 设置环境变量:它会设置必要的环境变量,包括 PYENV_ROOT,该变量指定 Pyenv 的根目录,通常设置为 Pyenv 安装的目录。

  2. 启用 Pyenv shims:Pyenv 使用一个称为 "shim" 的机制来拦截并重定向 Python 命令。pyenv init 会确保这些 shims 位于 Shell 的 PATH 中,以便 Pyenv 可以拦截和解析您运行的 Python 命令,以确保使用正确的 Python 版本。

  3. 提供版本管理功能:它启用版本管理功能,允许您使用 pyenv global、pyenv local 和 pyenv shell 等命令来选择和切换不同的 Python 版本。

重新加载 .zshrc

python 复制代码
source  ~/.zshrc

📢 .zshrc 文件主要是为了shell与系统进行会话时,会根据.zshrc配置查找对应的执行文件。

修改.zshrc 后,配置生效的方式主要有三个:

  1. 在终端执行 source ~/.zshrc 指令,会重新加载.zshrc ,是配置立即生效。
  2. 关闭当前终端,重新打开一个新的终端,也可以使新的配置生效
  3. 电脑开机时,会自动执行 .zshrc , 使配置生效。

检验 pyenv

python 复制代码
pyenv -v

安装 python

  • 显示可安装的版本
python 复制代码
pyenv  install  -l   
  • 安装指定python
python 复制代码
pyenv  install 3.9.1

切换版本

  • 全局切换
python 复制代码
pyenv global 3.9.1
  • 局部切换
python 复制代码
pyenv local 3.9.1

局部安装python,在不同项目中需要使用不同的python时非常有用。在当前项目目录下,会在当前根目录下自动生成一个.python-version文件。

查看python版本

python 复制代码
python --version
python 复制代码
python
  • 输出

查看pyenv 相关指令

python 复制代码
pyenv help

pyenv 相关API

--version 查看pyenv版本号

global 全局设置python

init 启用pyenv的 配置

install 安装python

local 设置局部python版本

uninstall 卸载python

version 查看当前设置的python版本

version-name 当前使用的python 名字

versions 列出pyenv可用的所有Python版本

which 显示指定python 的完整可执行路径

相关推荐
18538162800余。8 小时前
碰一碰发视频源码开发深度解析,定制化开发
macos·objective-c·cocoa
returnShitBoy11 小时前
iOS 上的内存管理是如何处理的?
macos·ios·cocoa
友善的猴子17 小时前
AlDente Pro for Mac电脑 充电限制保护工具
macos·电脑
世界尽头与你17 小时前
MacOS红队常用攻击命令
安全·macos·网络安全
干净的坏蛋19 小时前
mac 终端 code 命令打开 vscode,修改 cursor占用
ide·vscode·macos
石头wang19 小时前
如何关闭MacOS中鼠标滚轮滚动加速
macos·滚轮滚动加速
柯基的小屁墩1 天前
mac|使用scrcpy实现无线Android投屏
macos
我不是代码教父1 天前
[原创](现代Delphi 12指南): 设置、运行和调试你的第一个macOS应用程序.
macos·delphi
搬砖天才、1 天前
日常记录-群晖nas的docker注册表被墙,用Mac电脑的docker拉取镜像并安装到nas中
macos·docker·容器
OKXLIN1 天前
XCode集成第三方framework步骤
ide·macos·framework·xcode