升级OS X的Python 3.11后pip无法安装包,如何解决?
问题背景与报错
我在OS X系统上通过Homebrew升级到了最新版Python 3.11,同时安装了对应版本的pip。之后将Python路径从/usr/local/bin/python3.11重定向到/usr/local/bin/python,除了site-packages无法被找到(符合预期)外,其他一切正常。
但尝试使用pip或pip3安装包时,出现如下错误:
$ pip3 install numpy Traceback (most recent call last): File "/usr/local/bin/pip3", line 5, in <module> from pip._internal.cli.main import main File "/usr/local/lib/python3.11/site-packages/pip/_internal/cli/main.py", line 10, in <module> from pip._internal.cli.autocompletion import autocomplete File "/usr/local/lib/python3.11/site-packages/pip/_internal/cli/autocompletion.py", line 10, in <module> from pip._internal.cli.main_parser import create_main_parser File "/usr/local/lib/python3.11/site-packages/pip/_internal/cli/main_parser.py", line 9, in <module> from pip._internal.build_env import get_runnable_pip File "/usr/local/lib/python3.11/site-packages/pip/_internal/build_env.py", line 19, in <module> from pip._internal.cli.spinners import open_spinner File "/usr/local/lib/python3.11/site-packages/pip/_internal/cli/spinners.py", line 9, in <module> from pip._internal.utils.logging import get_indentation File "/usr/local/lib/python3.11/site-packages/pip/_internal/utils/logging.py", line 13, in <module> from pip._vendor.rich.console import ( File "/usr/local/lib/python3.11/site-packages/pip/_vendor/rich/__init__.py", line 17, in <module> _IMPORT_CWD = os.path.abspath(os.getcwd()) ^^^^^^^^^^^ PermissionError: [Errno 1] Operation not permitted
包括提升权限在内的旧版Stack Overflow解决方案均无效,请问如何使用pip安装包?
解决方案
以下几种方法可解决该问题:
1. 使用虚拟环境(推荐)
虚拟环境能隔离Python依赖,彻底避开系统级权限问题:
- 创建虚拟环境:
python -m venv ~/my-python-env - 激活虚拟环境:
source ~/my-python-env/bin/activate - 激活后直接用pip安装包,无需额外权限:
pip install numpy
2. 用--user参数安装到用户目录
不使用虚拟环境的话,可通过--user参数将包安装到当前用户的专属目录,绕过系统权限限制:
pip install numpy --user
该目录默认会被Python识别,不会出现site-packages找不到的问题。
3. 重新关联并升级pip
如果是pip本身的路径或权限关联异常,先重新安装升级pip:
python -m ensurepip --upgrade
之后直接用python -m pip代替pip/pip3执行安装,确保调用的是当前Python版本对应的pip:
python -m pip install numpy
4. 切换到有权限的工作目录
报错显示无法获取当前工作目录路径,可能是当前目录权限异常。切换到用户主目录再尝试安装:
cd ~ pip install numpy
内容的提问来源于stack exchange,提问作者Thane Plummer
相关产品推荐
相关产品推荐

