簡體   English   中英

pip install錯誤輸出:SyntaxError:語法無效

[英]pip install errors out: SyntaxError: invalid syntax

嘗試在CentOS6上安裝virtualenv,requests或pex時,pip install不起作用。 我在python2.6和pip 9.0.1上。 誰能告訴我為什么會這樣?

(pex_build)[root@pex pex_build]# pip install virtualenv

輸出:

Traceback (most recent call last):
  File "/opt/pex_build/bin/pip", line 7, in <module>
    from pip._internal import main
  File "/opt/pex_build/lib/python2.6/site-packages/pip/_internal/__init__.py", line 42, in <module>
    from pip._internal import cmdoptions
  File "/opt/pex_build/lib/python2.6/site-packages/pip/_internal/cmdoptions.py", line 16, in <module>
    from pip._internal.index import (
  File "/opt/pex_build/lib/python2.6/site-packages/pip/_internal/index.py", line 526
    {str(c.version) for c in all_candidates},
                      ^
SyntaxError: invalid syntax

命令:

(pex_build) [root@pex pex_build]# pip install requests pex

輸出:

Traceback (most recent call last):
  File "/opt/pex_build/bin/pip", line 7, in <module>
    from pip._internal import main
  File "/opt/pex_build/lib/python2.6/site-packages/pip/_internal/__init__.py", line 42, in <module>
    from pip._internal import cmdoptions
  File "/opt/pex_build/lib/python2.6/site-packages/pip/_internal/cmdoptions.py", line 16, in <module>
    from pip._internal.index import (
  File "/opt/pex_build/lib/python2.6/site-packages/pip/_internal/index.py", line 526
    {str(c.version) for c in all_candidates},
                      ^
SyntaxError: invalid syntax

當嘗試獲取get-pip.py時,curl也會出現類似的錯誤

命令:

(pex_build) [root@pex pex_build]# curl https://bootstrap.pypa.io/get-pip.py | python



% Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100 1602k  100 1602k    0     0  7373k      0 --:--:-- --:--:-- --:--:-- 14.6M

Traceback (most recent call last):
  File "<stdin>", line 20636, in <module>
  File "<stdin>", line 197, in main
  File "<stdin>", line 82, in bootstrap
  File "/tmp/tmp5zrn_f/pip.zip/pip/_internal/__init__.py", line 42, in <module>
  File "/tmp/tmp5zrn_f/pip.zip/pip/_internal/cmdoptions.py", line 16, in <module>
  File "/tmp/tmp5zrn_f/pip.zip/pip/_internal/index.py", line 526
    {str(c.version) for c in all_candidates},
                      ^
SyntaxError: invalid syntax

問題是你的Python版本被Python 2.6破壞了。 如果升級到9.0.3,它應該再次運行。

pip install pip == 9.0.3

如果您無法使用pip升級pip,則可以使用本地軟件包管理器重新安裝軟件包,然后升級到pip 9.0.3。

請記住,如果您使用的是虛擬環境,建議您也升級virtualenv,以便您的虛擬環境也具有pip 9.0.3。

pip install virtualenv == 15.2.0

但要小心,不要升級到高於9.0.3的pip版本或高於15.2.0的virtualenv,因為Prateek提到的Python 2.6支持已被刪除。

pip適用於CPython版本2.7,3.3,3.4,3.5,3.6以及pypy。

這意味着pip適用於每個次要版本的最新補丁版本。 盡力而為方法支持以前的修補程序版本。

只需使用下面的命令即可升級到兼容的Python版本。

pip install requests

檢查pip-documentation以獲取更多詳細信息。

包括@ eandersson的評論

或者你可以將pip升級到9.0.3

pip install pip==9.0.3

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM