Когда я пытался установить httpie в свой терминал Ubuntu в Windows, я использую эти командные строки, которые есть в документации:
pip install --upgrade pip setuptools
pip install --upgrade httpie
Пытаюсь проверить версию с помощью http --version
а потом я получил эту ошибку:
asoom$ http --version
Traceback (most recent call last):
File "/home/abdallah/.local/bin/http", line 8, in <module>
sys.exit(main())
File "/home/abdallah/.local/lib/python2.7/site-packages/httpie/__main__.py", line 10, in main
from .core import main
File "/home/abdallah/.local/lib/python2.7/site-packages/httpie/core.py", line 21
args: List[Union[str, bytes]] = sys.argv,
^
SyntaxError: invalid syntax
и я получил ту же ошибку с любой другой командой http.
Вы используете Python 2, срок службы которого уже истек. httpie прекратил поддержку Python 2 в версии 2.0.0 и теперь совместим только с Python 3.
Вместо этого вы можете попробовать запустить pip3
, если он установлен вместе с Python 3.
В дополнение к совету @exploide вы можете установить более старую версию, поддерживающую Python 2.7, с помощью следующей команды:
$ pip install 'httpie<2.0.0'
// #886
Вы используете Python 2, срок службы которого уже истек. httpie прекратил поддержку Python 2 в версии 2.0.0 и теперь совместим только с Python 3.
Вместо этого вы можете попробовать запустить
pip3
, если он установлен вместе с Python 3.
Я попробовал другой способ изменить версию Python по умолчанию, потому что у меня есть обе версии, спасибо @exploide и @jakubroztocil :
// определяем две разные версии Python:
sudo update-alternatives --install /usr/bin/python python /usr/bin/python2.7 1
sudo update-alternatives --install /usr/bin/python python /usr/bin/python3.6 2
// версия 3.6 должна быть определена по умолчанию:
sudo update-alternatives --set python /usr/bin/python3.6
Теперь это решено — pip install httpie
должно нормально работать во всех версиях Python. Сказав это, вам действительно следует подумать об обновлении до Python 3.