Несколько версий Python на одной машине? - PullRequest
66 голосов
/ 30 марта 2010

Есть ли где-нибудь официальная документация на веб-сайте Python о том, как установить и запустить несколько версий Python на одной машине в Linux?

Я могу найти десятки постов и ответов в блогах, но я хочу знать, существует ли "стандартный" официальный способ сделать это?

Или это все зависит от ОС?

Ответы [ 6 ]

65 голосов
/ 30 марта 2010

Я думаю, что это совершенно независимо. Просто установите их, тогда у вас есть команды, например, /usr/bin/python2.5 и /usr/bin/python2.6. Ссылка /usr/bin/python на ту, которую вы хотите использовать по умолчанию.

В любом случае все библиотеки находятся в отдельных папках (названных в соответствии с версией).

Если вы хотите скомпилировать версии вручную, это из файла readme исходного кода Python:

Установка нескольких версий

В системах Unix и Mac, если вы собираетесь установить несколько версий Python используя тот же префикс установки (аргумент --prefix для конфигурации скрипт), вы должны позаботиться о том, чтобы ваш основной исполняемый файл Python не перезаписывается при установке другой версии. Все файлы и каталоги, установленные с помощью «make altinstall», содержат главные и второстепенные версия и, таким образом, может жить бок о бок. "make install" также создает $ {prefix} / bin / python3, который ссылается на $ {prefix} /bin/pythonX.Y. Если вы собираетесь чтобы установить несколько версий, используя один и тот же префикс, вы должны решить, какой версия (если есть) является вашей "основной" версией. Установите эту версию, используя "сделать установку". Установите все остальные версии, используя «make altinstall».

Например, если вы хотите установить Python 2.5, 2.6 и 3.0 с 2.6 основная версия, вы должны выполнить "make install" в вашей сборке 2.6 каталог и "сделать altinstall" в других.

23 голосов
/ 30 марта 2010

В Windows они устанавливаются в отдельные папки «C: \ python26» и «C: \ python31», но исполняемые файлы имеют одинаковое имя «python.exe».

Я создал еще одну папку "C: \ python", которая содержит "python.bat" и "python3.bat", которые служат обертками для "python26" и "python31" соответственно, и добавил "C: \ python" к PATH переменная окружения.

Это позволяет мне набирать python или python3 в моих .bat оболочках Python, чтобы запустить желаемую.

В Linux вы можете использовать трюк #!, чтобы указать, какую версию скрипта вы хотите использовать.

5 голосов
/ 03 октября 2012

Как установить разные версии Python действительно зависит от ОС.

Однако, если вы работаете в Linux, вы можете использовать такой инструмент, как pythonbrew или pythonz , который поможет вам легко управлять и переключаться между различными версиями.

4 голосов
/ 16 сентября 2017

Если вам нужно установить несколько версий Python (рядом с основной) на Ubuntu / Mint : (должно работать аналогично другим Unix'ам.)

1) Установите необходимые пакеты для компиляции исходного кода

$ sudo apt-get install build-essential checkinstall
$ sudo apt-get install libreadline-gplv2-dev libncursesw5-dev libssl-dev libsqlite3-dev tk-dev libgdbm-dev libc6-dev libbz2-dev

2) Скачайте и распакуйте нужную версию Python

Загрузите Python Source для Linux как tarball и переместите его в /usr/src.

Распакуйте загруженный пакет на место. (замените 'x' на загруженную версию)

$ sudo tar xzf Python-x.x.x.tgz

3) Скомпилируйте и установите исходный код Python

$ cd Python-x.x.x
$ sudo ./configure
$ sudo make altinstall

Ваша новая корзина Python теперь находится в /usr/local/bin. Вы можете протестировать новую версию:

$ pythonX.X -V
Python x.x.x
$ which pythonX.X
/usr/local/bin/pythonX.X

# Pip is now available for this version as well:
$ pipX.X -V
pip X.X.X from /usr/local/lib/pythonX.X/site-packages (python X.X)
0 голосов
/ 12 июня 2019

Я сделал это с помощью Anaconda Navigator. Я установил анаконду навигатор и создал две разные среды разработки с разными версиями Python

и переключение между различными версиями Python путем переключения или активации и деактивации окружения.

Сначала установите Anaconda Navigator, а затем создайте среду.

см. Здесь помощь по управлению средами

https://docs.anaconda.com/anaconda/navigator/tutorials/manage-environments/

Вот видео, чтобы сделать это с conda

https://youtu.be/EGaw6VXV3GI

0 голосов
/ 30 марта 2010

Это наиболее сильно зависит от используемой вами системы распространения пакетов. Например, с помощью MacPorts вы можете установить несколько пакетов Python и использовать утилиту pyselect для простого переключения между ними по умолчанию. Вы всегда можете вызывать разные интерпретаторы Python, указав полный путь, и вы можете связать все библиотеки и заголовки Python, указав полный путь к ним.

Таким образом, независимо от того, каким образом вы устанавливаете версии, если вы храните их отдельно, вы сможете запускать их отдельно.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...