PIP从命令行引发SyntaxError

时间:2016-05-03 14:52:19

标签: python pip easy-install centos5 python-2.4

我尝试使用以下命令安装PIP:

sudo yum install python-setuptools
sudo easy_install pip
sudo pip install supervisor

安装时,第二行和第三行引发了许多语法错误。错误与下面的错误非常相似,所以为了简洁起见,我将在这里省略,但如果有这些错误,请告诉我。有很多。

当我运行任何pip命令时,我得到SyntaxError s:

# pip
Traceback (most recent call last):
  File "/usr/bin/pip", line 7, in ?
    sys.exit(
  File "/usr/lib/python2.4/site-packages/pkg_resources.py", line 236, in load_entry_point
    return get_distribution(dist).load_entry_point(group, name)
  File "/usr/lib/python2.4/site-packages/pkg_resources.py", line 2097, in load_entry_point
    return ep.load()
  File "/usr/lib/python2.4/site-packages/pkg_resources.py", line 1830, in load
    entry = __import__(self.module_name, globals(),globals(), ['__name__'])
  File "/usr/lib/python2.4/site-packages/pip-8.1.1-py2.4.egg/pip/__init__.py", line 208
    except PipError as exc:
                     ^
SyntaxError: invalid syntax

我正在运行 CentOS版本5.11(最终版) Python 2.4.3(#1,2013年1月9日,06:47:03)。请注意,这些由WHM管理。

我已使用python get-pip.py --ignore-installed重新安装了PIP,但结果相同。

这是Python版本冲突吗?我的Python版本是否太旧,PIP脚本中的语法不同?我该怎么办?

2 个答案:

答案 0 :(得分:3)

except PipError as exc:不是有效的Python 2.4语法(它应该是except PipError, exc)。

我认为pip不适用于Python 2.4。试试这个问题来安装PIP 1.1,它与那个版本的Python兼容:

Installing Pip on 2.4

答案 1 :(得分:1)

正如上面的答案所描述的那样,你在pip和python之间遇到了版本冲突。您使用旧版本的CentOS和旧版本的python 2,这会让事情变得更糟。

使用&sudo pip'更新系统环境使用系统实用程序创建版本问题的风险很高。例如,您可以打破yum,并强制使用rpm命令更新系统。您需要在/ usr / local / bin或用户目录中安装最新版本的python(最好是python 3)作为备用安装。

然后我强烈建议使用虚拟环境(https://virtualenv.pypa.io/en/latest/或python 3.5中的内置功能)。这使您可以按照自己喜欢的方式设置自己的python可执行文件,库和已安装的软件包,而不会有影响整个系统的风险。这是一个轻微的设置痛苦,但它使大部分问题都消失了。