MacBook Air安装pip时出现SyntaxError: invalid syntax错误的技术求助
嘿,我一眼就定位到问题了!看你给出的Traceback报错:
Traceback (most recent call last):
File "/usr/local/bin/pip", line 11, in
load_entry_point('pip==21.0.1', 'console_scripts', 'pip')()
File "/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/pkg_resources/init.py", line 489, in load_entry_point
return get_distribution(dist).load_entry_point(group, name)
File "/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/pkg_resources/init.py", line 2843, in load_entry_point
return ep.load()
File "/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/pkg_resources/init.py", line 2434, in load
return self.resolve()
File "/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/pkg_resources/init.py", line 2440, in resolve
module = import(self.module_name, fromlist=['name'], level=0)
File "/Library/Python/2.7/site-packages/pip-21.0.1-py2.7.egg/pip/_internal/cli/main.py", line 60
sys.stderr.write(f"ERROR: {exc}")
^
SyntaxError: invalid syntax
关键在最后那行f"ERROR: {exc}"——这是Python 3.6+才支持的f-string格式化语法,但你的环境用的是Python 2.7(从路径里的Versions/2.7就能看出来),而pip 21.0.1已经完全放弃了对Python 2.7的支持,所以才会抛出语法错误。
给你两个解决方案,按需选择:
方案1:安装适配Python 2.7的pip版本
如果你还得继续用Python 2.7,得装最后一个支持它的pip版本:
- 先卸载当前冲突的pip:
sudo pip uninstall pip - 然后用官方的Python2.7专属脚本安装适配版本:
sudo curl https://bootstrap.pypa.io/pip/2.7/get-pip.py | python2.7
方案2:迁移到Python 3(更推荐)
Python 2.7早在2020年就停止维护了,各种包都不再更新,长远来看建议转到Python 3:
- 用Homebrew安装Python 3(如果没装Homebrew,先跑
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"):brew install python - 之后用
pip3来管理Python 3的包,完全避开Python 2的环境冲突。
内容的提问来源于stack exchange,提问作者Mahendra K R




