pip: работа с несколькими версиями Python?

Есть ли способ сделать pip хорошо играть с несколькими версиями Python? Например, я хочу использовать pip для явной установки вещей либо на установку моего сайта 2.5, либо на установку моего сайта 2.6.

Например, с easy_install , я использую easy_install-2.{5,6} .

И, да, я знаю о virtualenv, и нет – это не решение этой конкретной проблемы.

12 Solutions collect form web for “pip: работа с несколькими версиями Python?”

Начиная с версии 0.8, Pip поддерживает pip-{version} . Вы можете использовать его так же, как easy_install-{version} :

 $ pip-2.5 install myfoopackage $ pip-2.6 install otherpackage $ pip-2.7 install mybarpackage 

EDIT : pip изменил свою схему, чтобы использовать pipVERSION вместо pip-VERSION в версии 1.5. Вы должны использовать следующее, если у вас есть pip >= 1.5 :

 $ pip2.6 install otherpackage $ pip2.7 install mybarpackage 

Проверьте https://github.com/pypa/pip/pull/1053 для получения более подробной информации.


Рекомендации:

/path/to/python2.{5,6} /path/to/pip install PackageName не работает?

Для этого, чтобы работать с любой версией python, у которой нет уже установленного пакета, вам нужно загрузить pip и выполнить python*version* setup.py install . Например, python3.3 setup.py install . Это устраняет ошибку импорта в комментариях. (Как было предложено @hbdgaf)

У меня был установлен python 2.6 по умолчанию (Amazon EC2 AMI), но мне нужен python2.7 плюс некоторые внешние пакеты для моего приложения. Предполагая, что вы уже установили python2.7 вместе с python по умолчанию (в моем случае, 2.6). Вот как установить пакет и пакеты для не-default python2.7

Установите pip для вашей версии python:

 curl -O https://bootstrap.pypa.io/get-pip.py python27 get-pip.py 

Используйте специальную версию для установки пакетов:

 pip2.7 install mysql-connector-python --allow-external mysql-connector-python 

В Windows вы можете выполнить модуль pip, указав версию python (вам нужно убедиться, что пусковая установка находится на вашем пути)

py -3.4 -m pip install pyfora

py -2.7 -m pip install pyfora

Кроме того, вы можете вызвать требуемый исполняемый файл python следующим образом:

/path/to/python.exe -m pip install pyfora

Это работало для меня в окнах таким образом:

  1. Я изменил имя python-файлов python.py и pythonw.exe на python3.py pythonw3.py

  2. Затем я просто запустил эту команду в приглашении:

    python3 -m pip install package

Другие ответы показывают, как использовать пипс как с 2.X, так и с 3.X Python, но не показывает, как обрабатывать случай с несколькими дистрибутивами Python (например, исходный Python и Anaconda Python) .

У меня есть в общей сложности 3 версии Python: оригинальный Python 2.7 и Python 3.5 и Anaconda Python 3.5.

Вот как я устанавливаю пакет в:

  1. Оригинальный Python 3.5 :

     /usr/bin/python3 -m pip install python-daemon 
  2. Оригинальный Python 2.7 :

     /usr/bin/python -m pip install python-daemon 
  3. Anaconda Python 3.5 :

     python3 -m pip install python-daemon 

    или

     pip3 install python-daemon 

    Проще, поскольку Anaconda переопределяет оригинальные двоичные файлы Python в пользовательской среде.

    Конечно, установка в anaconda должна выполняться командой conda , это просто пример.


Кроме того, убедитесь, что pip установлен для этого конкретного python. Возможно, вам потребуется вручную установить pip. Это работает в Ubuntu 16.04:

 sudo apt-get install python-pip 

или

 sudo apt-get install python3-pip 

По-видимому, существует несколько версий easy_install и pip . Кажется, это большой беспорядок. Во всяком случае, это то, что я сделал для установки Django для Python 2.7 на Ubuntu 12.10:

 $ sudo easy_install-2.7 pip Searching for pip Best match: pip 1.1 Adding pip 1.1 to easy-install.pth file Installing pip-2.7 script to /usr/local/bin Using /usr/lib/python2.7/dist-packages Processing dependencies for pip Finished processing dependencies for pip $ sudo pip-2.7 install django Downloading/unpacking django Downloading Django-1.5.1.tar.gz (8.0Mb): 8.0Mb downloaded Running setup.py egg_info for package django warning: no previously-included files matching '__pycache__' found under directory '*' warning: no previously-included files matching '*.py[co]' found under directory '*' Installing collected packages: django Running setup.py install for django changing mode of build/scripts-2.7/django-admin.py from 644 to 755 warning: no previously-included files matching '__pycache__' found under directory '*' warning: no previously-included files matching '*.py[co]' found under directory '*' changing mode of /usr/local/bin/django-admin.py to 755 Successfully installed django Cleaning up... $ python Python 2.7.3 (default, Sep 26 2012, 21:51:14) [GCC 4.7.2] on linux2 Type "help", "copyright", "credits" or "license" for more information. >>> import django >>> 

Недавно я столкнулся с этой проблемой и обнаружил, что я не получаю правильный пип для Python 3, в моей Linux-системе, которая также имеет Python 2.

Сначала вы должны убедиться, что вы установили pip для своей версии python:

Для Python 2:

 sudo apt-get install python-pip 

Для Python 3:

 sudo apt-get install python3-pip 

Затем для установки пакетов для одной версии Python или другой, просто используйте для Python 2 следующее:

 pip install <package> 

или для Python 3:

 pip3 install <package> 

pip также является пакетом python. Таким образом, самый простой способ установки модулей в конкретную версию python будет ниже

  python2.7 /usr/bin/pip install foo 

или

 python2.7 -m pip install foo 

Отсюда: https://docs.python.org/3/installing/

Вот как установить пакеты для различных версий, которые устанавливаются одновременно с linux, mac, posix :

 python2 -m pip install SomePackage # default Python 2 python2.7 -m pip install SomePackage # specifically Python 2.7 python3 -m pip install SomePackage # default Python 3 python3.4 -m pip install SomePackage # specifically Python 3.4 python3.5 -m pip install SomePackage # specifically Python 3.5 python3.6 -m pip install SomePackage # specifically Python 3.6 

В Windows используйте пусковую установку py Python в комбинации с ключом -m:

 py -2 -m pip install SomePackage # default Python 2 py -2.7 -m pip install SomePackage # specifically Python 2.7 py -3 -m pip install SomePackage # default Python 3 py -3.4 -m pip install SomePackage # specifically Python 3.4 

Контекст: Archlinux

Действие:
Установите python2-pip:
sudo pacman -S python2-pip

Теперь у вас есть pip2.7:
sudo pip2.7 install boto

Тест (в моем случае мне нужно «boto»):
Выполните следующие команды:

 python2 import boto 

Успех: ошибок нет.

Выход: Ctrl + D

например, если вы установили другие версии (например, 3.5) по умолчанию и хотите установить pip для python 2.7:

  1. скачать pip на https://pypi.python.org/pypi/pip (tar)
  2. распаковать tar-файл
  3. cd в каталог файла
  4. sudo python2.7 setup.py install
  • Python сократился после обновления OS X 10.8
  • Установить пипс в докере
  • Объединение conda environment.yml с pip requrements.txt
  • почему пика так SLOW для загрузки? (как устранить неполадки?)
  • Почему пакет устанавливает пакет за пределы моей виртуальной среды?
  • pip install - PermissionError: Разрешение отклонено
  • Хероку оттолкнул из-за ошибки / распространения ошибки. Каков обходной путь?
  • Msgstr "SSLError: операция чтения отключена" при использовании pip
  • Python - лучший язык программирования в мире.