更新macOS的python后出现 externally-managed-environment解决方法

macOS内置的python更新到3.12后,使用pip3时出现如下提示。

screenshot

原因:根据PEP668,python试图避免系统的包管理器(如homebrew)和pip的冲突。

解决方法:以安装stcgal为例

1强制删除此提示,然后按原方法操作。

macOS中,python3.12路径如下,删除即可。

/usr/local/Cellar/python@3.12/3.12.1/Frameworks/Python.framework/Versions/3.12/lib/python3.12

2根据提示内容,用homebrew安装pipx,并加入path。


1
2
brew install pipx
pipx ensurepath

改用pipx代替pip3安装所需的包。


1
pipx install stcgal

使用pipx安装,成功提示如图所示。

success