curl для get-pip.py не работает: синтаксическая ошибка - PullRequest
0 голосов
/ 26 апреля 2018

Когда я пытаюсь запустить:

[root@pex appliance_ui]# 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 1603k  100 1603k    0     0  7006k      0 --:--:-- --:--:-- --:--:-- 13.2M
Traceback (most recent call last):
  File "<stdin>", line 20649, in <module>
  File "<stdin>", line 197, in main
  File "<stdin>", line 82, in bootstrap
  File "/tmp/tmpH39pcu/pip.zip/pip/_internal/__init__.py", line 42, in <module>
  File "/tmp/tmpH39pcu/pip.zip/pip/_internal/cmdoptions.py", line 16, in <module>
  File "/tmp/tmpH39pcu/pip.zip/pip/_internal/index.py", line 526
    {str(c.version) for c in all_candidates},
                      ^
SyntaxError: invalid syntax

Кроме того,

[root@pex appliance_ui]# python get-pip.py --verbose

Выход:

python: can't open file 'get-pip.py': [Errno 2] No such file or directory

Может кто-нибудь сказать мне, почему это происходит? У меня есть Python 2.6 и пип 9.0.1. Моя цель - скоро обновить Python 3.5 на весь проект.

1 Ответ

0 голосов
/ 26 апреля 2018

Версия Python, которую вы используете, найдена в python, не поддерживает набор пониманий. Я вижу ту же ошибку при попытке сделать {str('foo') for c in [1,2,3]} в Python 2.4, а не в 2.7, где она работает.

За ответ здесь и примечание в этом разделе документации по установке pip вы должны использовать этот URL для get-pip.py на 2.6: https://bootstrap.pypa.io/2.6/get-pip.py

Вы также можете увидеть Python 2.7 - самую старую поддерживаемую версию из перечисленных здесь: https://pip.pypa.io/en/stable/installing/#python-and-os-compatibility

Что касается [Errno 2] No such file or directory, то это потому, что curl выводит стандартное содержимое файла, а не в вашу файловую систему. Если вы хотите скачать файл, вы будете использовать wget.

...