it-swarm.com.ru

AttributeError: Модуль Pip не имеет атрибута 'main'

Я пытаюсь создать Python API для проекта с открытым исходным кодом под названием Zulip, и я продолжаю сталкиваться с той же проблемой, как показано на скриншоте ниже.

Я использую Python3 и моя версия пипа 10.0.0. Файл, о котором идет речь, - это setup.py, а код, который запутывается, - это доступ к атрибуту pip.main() для установки пакета.

Теперь я знаю, что эта сборка должна быть успешной, потому что это проект с открытым исходным кодом, но я часами пытался решить проблему зависимости, связанную с pip.main().

Любая помощь будет принята с благодарностью. 

 enter image description here

41
Kishan Patel
python3 -m pip install --user --upgrade pip==9.0.3

Результат пипса: откат

55
ericson.cepeda

Первый забег

import pip
pip.__version__

Если результат равен «10 .0.0», это означает, что вы успешно установили pip 
Так как pip 10.0.0 больше не поддерживает pip.main (), вы можете найти это полезным 
https://pip.pypa.io/en/latest/user_guide/#using-pip-from-your-program
Используйте что-то вроде import subprocess subprocess.check_call(["python", '-m', 'pip', 'install', 'pkg']) # install pkg subprocess.check_call(["python", '-m', 'pip', 'install',"--upgrade", 'pkg']) # upgrade pkg


Правка: пип 10.0.1 по-прежнему не поддерживает основной 
Вы можете выбрать СКАЧАТЬ версию своего пипа с помощью следующей команды: 
python -m pip install --upgrade pip==9.0.3

23
Luke.SWK

Похоже, что Пип сделал рефакторинг и переместил основной на внутренний. Здесь подробно обсуждается это: https://github.com/pypa/pip/issues/5240

Обходной путь для меня должен был изменить

import pip
pip.main(...)

в

from pip._internal import main
main(...)

Я рекомендую прочитать обсуждение, я не уверен, что это лучший подход, но он работал для моих целей. 

20
mdoc-2011

Это помогает мне, https://pip.pypa.io/en/stable/install/

curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py
python get-pip.py

Если вы используете python3 и не устанавливаете его по умолчанию. сделай это,

python3 get-pip.py

Меня устраивает.

5
Evan

Чтобы проверить, является ли ваша проблема с установкой pip, попробуйте использовать easy_install для установки более ранней версии pip:

easy_install pip==9.0.1

Если это удастся, pip должен работать сейчас. Затем вы можете продолжить установку любой другой версии pip:

pip install pip==10....

Или вы можете просто остаться с version 9.0.1, поскольку для вашего проекта требуется версия> = 9.0.

Попробуйте построить свой проект снова.

5
Shuwn Yuan Tee

Если python -m pip install --upgrade pip==9.0.3 не работает, и вы используете Windows,

  1. Перейдите в этот каталог и переместите папки pip в другое место. 

 enter image description here

  1. Закройте свой IDE, если он у вас открыт.

  2. Нажмите 'Repair' на Python 3.

 enter image description here

  1. Ваш IDE должен перестать обнаруживать пакеты pip и предлагать вам установить их. Установите и сохраните последнюю стабильную версию pip, заблокировав автоматические обновления .  enter image description here
3
AeFinches

Пип 10.0. * Не поддерживает main.

Вы должны понизить рейтинг до уровня 9.0.3.

2
Matthew

Не уверен насчет Windows. Но для пользователей Mac используйте это:

pip install --upgrade pip==9.0.3
0
Adam Liu

Мое решение состоит в том, чтобы проверить номер версии pip и правильно использовать функцию импорта правильной основной

    import pip

    if int(pip.__version__.split('.')[0])>9:
        from pip._internal import main
    else:
        from pip import main
    def install(package):
        main(['install', package])
0
Adewole Adesola

Шаг 1 Curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py Step2 Python get-pip.py

0
Kiran

Я исправил эту проблему при обновлении до последней версии

Sudo pip install --upgrade pip

Моя версия: pip 18.1 из /Library/Python/2.7/site-packages/pip (python 2.7)

0
matt

Отредактируйте файл: C:\Users\kpate\hw6\python-zulip-api\zulip_bots\setup.py в строке 108

в

rcode = pip.main(['install', '-r', req_path, '--quiet'])

делать

rcode = getattr(pip, '_main', pip.main)(['install', '-r', req_path, '--quiet'])´
0
SleX

Я столкнулся с той же ошибкой при использовании pip на anaconda3 4.4.0 (python 3.6) на Windows.

Я исправил проблему с помощью следующей команды:

easy_install pip==18.*  ### installing the latest version pip

Или, если требуется более низкая версия, укажите это в команде.

Или вы можете попробовать установить более низкую версию, а затем обновить ее до последней версии следующим образом:

easy_install pip==9.0.1

easy_install --upgrade pip
0
divya gera

Это работает хорошо:

 py -m pip install --user --upgrade pip==9.0.3
0
i_th