#python #pip #setuptools
#python #пип #setuptools
Вопрос:
Мне нужно было установить Setuptools для проекта, который я делал, и мне пришлось загружать Setuptools через tar-файл (не спрашивайте), но когда я запустил команду, которую мне нужно было использовать для ее установки:
C:UsersmynameDownloadssetuptools-51.1.1>py -2 setup.py install
Это закончилось ошибкой синтаксиса:
Traceback (most recent call last):
File "setup.py", line 7, in <module>
import setuptools
File "C:UsersmynameDownloadssetuptools-51.1.1setuptools__init__.py", line 16, in <module>
import setuptools.version
File "C:UsersmynameDownloadssetuptools-51.1.1setuptoolsversion.py", line 1, in <module>
import pkg_resources
File "C:UsersmynameDownloadssetuptools-51.1.1pkg_resources__init__.py", line 1365
raise SyntaxError(e) from e
^
SyntaxError: invalid syntax
Я использую Python 2.7.
Почему он показывает ошибку, и как я могу это исправить?
Редактировать:
Когда я заглянул в __init__.py
файл, я обнаружил, что там есть нечто, называемое «недопустимым маркером».:
try:
marker = packaging.markers.Marker(text)
return marker.evaluate()
except packaging.markers.InvalidMarker as e:
raise SyntaxError(e) from e
Комментарии:
1. Это код python3. Почему вы должны устанавливать из файла .tar, а не через pip?
2. Не используйте Python 2.7
3. @SuperStormer Если я использую pip, я должен использовать
py -2 pip install setuptools
, потому что я установил python 3 до python 2. Когда я запускаю эту команду, она выдает следующую ошибку: «C:Python27python.exe : не удается открыть файл ‘pip’: [Ошибка 2] Нет такого файла или каталога»4.
py -2 -m pip install setuptools
5. @zabop Проект, для которого я использую setuptools, имеет синтаксис python 2
Ответ №1:
Последней версией setuptools для поддержки Python 2.7 была 44.1.1 (январь 2020). Смотрите Список изменений.
Обновите свою версию Python, чтобы использовать setuptools 51.1.1.