Как изменить версию python linux

Как изменить версию python linux

На случай если у вас в системе не установлено ещё ни одной из версий Phyton, то ставим обе версии:

Установка Phyton 2:

# apt install python

Установка Phyton 3

# apt install python3

Проверить версию Python по умолчанию, выполнив команду мы узнаем версию:

$ python —version
Python 2.7.13

После установки двух версий Python по умолчанию устанавливается версия 2.7:

Теперь нам надо обновить список альтернатив Python

Чтобы выполнить общесистемное переключение между версиями Python по умолчанию, используем команду update-alternatives . При первом вводе команда update-alternatives будет ругаться на то, что нет доступных альтернатив python:

# update-alternatives —list python

Чтобы установить альтернативы Python, сначала узнаем все доступные версии:

$ ls /usr/bin/python*
/usr/bin/python /usr/bin/python2.7 /usr/bin/python3.7 /usr/bin/python3m
/usr/bin/python2 /usr/bin/python3 /usr/bin/python3.7m

Затем обновим список альтернатив Python для каждой версии, которую мы хотим использовать. У меня это /usr/bin/python2.7 и /usr/bin/python3.7 :

# update-alternatives —install /usr/bin/python python /usr/bin/python2.7 1

# update-alternatives —install /usr/bin/python python /usr/bin/python3.5 2

Затем проверяем результат:

# update-alternatives —list python
/usr/bin/python2.7
/usr/bin/python3.7

Обратите внимание, что целое число в конце каждой команды обозначает приоритет. Более высокое число означает более высокий приоритет, и поэтому /usr/bin/python3.7 версия была установлена в автоматическом режиме по умолчанию, если не выбран другой вариант. После выполнения обеих вышеперечисленных команд ваша текущая версия Python по умолчанию имеет /usr/bin/python3.7 более высокий приоритет (2):

Чтобы в этом убедиться, проверим версию по умолчанию:

# python —version
Python 3.7.3

Переключение между версиями Python

Теперь, когда мы обновили список альтернатив Python, чтобы выполнить переключение между любыми версиями Python, нужно выполнить:

update-alternatives —config python
Есть 2 варианта для альтернативы python (предоставляет /usr/bin/python).

Выбор Путь Приор Состояние
————————————————————
0 /usr/bin/python3.7 2 автоматический режим
1 /usr/bin/python2.7 1 ручной режим
* 2 /usr/bin/python3.7 2 ручной режим

Press to keep the current choice[*], or type selection number:

и выберите подходящую версию, используя целое число выбора, как показано выше.

# python —version
Python 2.7.16

Версия Python для локального пользователя

Если вам нужно выборочно изменять версию Python только для каждого пользователя, вы можете попробовать отредактировать .bashrc файл пользователя. Например, чтобы перейти на версию Python, 3.5 выполните следующую команду

$ python —version
Python 2.7.16
$ echo ‘alias python=»/usr/bin/python3.7″‘ >>

/.bashrc
$ . .bashrc
$ python —version
Python 3.7.3

Если вам помогла статья или информация была полезной. Благодарность, не должна знать границ.

Источник

Как изменить используемую по умолчанию версию Python в Debian 9

В Debian 9 установлены сразу 2 версии Python (из разных веток).

На момент написания заметки они были представлены пакетами python, который соответствует версии 2.7.13 из ветки 2.*; и python3 — версия 3.5.3 из ветки 3.*.

Само собой, по умолчанию используется только какая-то одна из версий, и для Debian это более старая версия 2.7.

Определение установленых версий Python

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

для определения точного номера версии из ветки 2.* (также эта команда показывает, какая версия Python используется в системе по умолчанию) и

Читайте также:  Windows шрифт кодировка символов

которая покажет версию третьего Python.

Итак, предположим вы определии, что у вас установлена версия 2.7.13 второго Python, и она же используется как дефолтная.

Изменение версии Python, используемой по умолчанию

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

Описание ошибки свидетельствует, что в системе нет настроеных для Python альтернатив.

Далее нужно определиться, нужна ли вам возможность переключения между версиями или вы просто хотите изменить используемую по умолчанию версию.

В первом случае мы сначала добавим в качестве альтернативы версию 2. Для этого определим местонахождение её бинарников

А затем установим версию 2.7 в качестве первой альтернативы (внимание, для этой операции требуются root привелегии)

Последний параметр в этом примере (единица) указывает на приоритет — чем больше цифра, тем он выше.

Далее делаем тоже самое с третьей версией. Определяем местоположение бинарников.

И добавляем версию в список альтернатив.

Если вы не планируете использовать вторую версию Python, то этап её добавления в таблицу альтернатив можно пропустить.

После этого команда python -V должна вернуть версию 3.5.3, что означает, что по умолчанию в системе используется третья версия Python.

и убедимся, что теперь у нас в системе в качестве альтернатив установлены две версии Python.

С этого момента мы в любое время можем переключиться на нужную версию с помощью команды

Источник

🐍 Как переключить версию Python на Ubuntu и Debian

Python – это язык высокоуровневый язык программирования, широко используемый в данное время.

Он доступен для всех популярных операционных систем.

Вы можете установить более одной версии Python на одной системе.

После установки нескольких версий Python вы можете переключить Python по умолчанию с помощью инструмента update-alternatives.

Всем разработчикам Python рекомендуется использовать виртуальную среду для приложений. Это обеспечивает изолированную среду для приложения с определенной версией Python.

Переключение версии Python на Ubuntu и Debian

Инструмент командной строки update-alternatives предназначен для создания и поддержки символических ссылок для команд по умолчанию.

С его помощью мы можем легко переключать команды на разные версии.

В данном учебнике на системе Debian установлены Python3.9 и Python2.7.

Мы создадим группу для обеих команд и установим символические ссылки.

Создайте симлинк из /usr/bin/python2.7 в /usr/bin/python и задайте имя группы как “python”.

Позже имя группы будет использоваться для переключения ссылок.

Измените ссылку симлинка /usr/bin/python3.9 на /usr/bin/python и установите имя группы на “python”.

Имя группы должно быть одинаковым для всех версий python.

Повторите шаг 2, чтобы добавить в группу еще одну версию Python, которая уже установлена в вашей системе.

На данном этапе вы добавили два бинарника python в группу с именем “python”.

Теперь вы можете легко переключиться на любую версию с помощью следующих команд.

Здесь “python” – это имя группы, определенное в приведенных выше командах.

В приведенном выше выводе Python 2.7 установлен в качестве текущей версии.

Чтобы изменить ее на Python 3.9, нужно ввести 0 или 2 и нажать Enter.

Текущая версия Python в вашей системе изменена.

Просто введите следующую команду для просмотра корректной активной версии Python

Вы можете добавить несколько версий Python в группу (Шаги: 01 и 02) и легко переключаться между ними.

Читайте также:  Установка приложений для линукс

Заключение

В этом руководстве вы узнали о переключении версий Python по умолчанию в системах Ubuntu и Debian Linux.

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

Источник

linux-notes.org

Разработчики python не сделали поддержку версий и это не очень хорошо. Появляется ряд проблем, а именно с версиями ПО. Одни утилиты требуют версию 2.7.х, другие 3.4.х. И я хотел бы в своей статье, рассказать как можно использовать несколько версий или переключить версию python в Unix/Linux.

Переключить версию python в Unix/Linux

Сейчас по умолчанию, во многих Unix/Linux ОС используется питон 2.6. Чтобы проверить какая версия питона используется в системе, выполните:

Выполним установку python:

Так же, посмотрим:

И так, чтобы переключить версию питона, я буду использовать несколько методов.

-===СПОСОБ 1 — использование алиаса===-

Один из самых простых способов — это использовать алиасы. Открываем файл:

И, прописываем сам алиас на нужную версию питона:

Чтобы изменения вступили в силу, выполняем:

После этого, можно проверять версию:

Видно что все отлично работает.

-===СПОСОБ 2 — использование alternatives===-

Чтобы изменить версию python глобально, я воспользуюсь alternatives утилитой:

Если вывода не будет, — это будет означать, что python alternative еще не сконфигурирована. Чтобы это сделать, выполните ( взято в качестве примера):

Вышеупомянутые команды будут указывать команде alternatives для создания соответствующих символических ссылок, которые будут использоваться при выполнении команды python. Я назначил python3.6 более высокий приоритет ( цифра 2), — это означает, что если не выбрана альтернатива для python, то по умолчанию будет использоваться python3.6. После выполнения вышеуказанных команд ваша версия python должна измениться на python3.6 из-за ее более высокого приоритета.

Для переключения между вышеперечисленными версиями python теперь достаточно просто:

Чтобы удалить питон с alternatives, используем:

Как-то так! На этому у меня все, статья «Переключить версию python в Unix/Linux» завершена.

Источник

Менеджер версий python

Иногда полезно держать несколько версий python на одной машине. Допустим для разработки двух проектов нам необходима вторая и третья ветка python. Или вы поддерживаете проект который использует старую версию python.

Обычно для этого мы используем виртуальное окружение virtualenv или же обертку для него virtualenvwrapper. Об этом я рассказывать не буду, так как есть уже много подобных статей, да и в документациях к самим утилитам все очень хорошо объяснено. Достаточно только забить virtualenv или virtualenvwrapper в поисковик.
Но в дополнение к ним я хочу рассказать в этой статье про менеджер версий python. Кому любопытно прошу под кат.

Чтобы использовать несколько версий python, можно установить их вручную или воспользоваться менеджер версий. Таких есть два: pythonbrew(который более не развивается) и pyenv. Оба менеджера не поддерживают windows(pythonbrew, pyenv) так что питонистам пишущим на этой платформе, придется пока разруливать все руками, либо сделать свою утилиту для смены путей до нужных версий. Кто как справляется с данной ситуацией можете оставлять в комментариях.
Так как pythonbrew более не поддерживается в этой статье он рассмотрен не будет.

P.S. В статье приведены примеры проверенные для OS Ubuntu 12.04. При попытке повторить их, делайте поправки относительно своего дистрибутива.

Ручной способ

Для того чтобы работать с несколькими версиями питона, можно установить необходимые версии в указанный префикс. Например чтобы не мудрить с правами, установим дополнительно 2 версии python(2.7.6 и 3.3.2) в директорию пользователю:
2.7.6

Читайте также:  Curl отправка файла windows

для 3.3.2 делаем аналогичные операции:

Теперь можно создать виртуальное окружение чтобы использовать эти версии:

или через virtualenvwrapper:

Собственно на основании такого способа описана статья по созданию мультихостинга.
Далее если вам необходимо использовать какую-то из этих версий как python по умолчанию, то вам необходимо добавить в переменную окружения путь до интерпретатора python.

Соответственно вместо bashrc вы ставите bash_profile, zshrc, kshrc, profile в зависимости от вашей командной оболочки.

И по необходимости можно установить pip, предварительно установив setuptools.

Фух, ну вроде бы все. А теперь о том как можно сделать это проще использую менеджер версий python.

PyEnv

В общем если вы достаточно ленивы, то можно не делать всего того что описано выше а воспользоваться утилитой pyenv, которая упростит вам данное взаимодействие с окружением и путями.

Так в чем же заключается особенность этой утилиты? Вот что она может со слов автора проекта:

  • Let you change the global Python version on a per-user basis.
  • Provide support for per-project Python versions.
  • Allow you to override the Python version with an environment variable.
  • Search commands from multiple versions of Python at a time. This may be helpful to test across Python versions with tox.

По умолчанию все версии Python будут доступны в

/.pyenv/versions/ . Изменять версии Python можно как в глобальном контексте так и в локальном(например под конкретный проект).

Как ставить pyenv хорошо описывается в инструкции. Так же у автора есть скрипт который по мимо самой pyenv ставит еще и дополнительные плагины, в том числе и для virtualenv. Есть возможность установить плагин и для virtualenvwrapper.

Прежде чем начать установку, убедитесь, что у вас установлен git:

Далее устанавливаем по инструкции:

Во втором случае установка произойдет с дополнительными плагинами.
Далее, для того чтобы все заработало, дополним наш bashrc и перезагрузим оболочку:

Для обновления утилиты или смены ее версии используем git.

Для управления версиями pyenv необходимо перейти в директорию с утилитой:

Для просмотра доступных версий:

для смены версии

Пример использования

В добавок ко всему все довольно подробно и детально расписано у автора проекта в его репозиториях на github.

Виртуальное окружение

Все, а дальше как хотите. Если вы используете 3 ветку python то для создания виртуального окружения можно воспользоваться утилитой venv которая работает из коробки. Про это есть статья на хабре. Если вы больше привыкли к virtualenv или ее обертке virtualenvwrapper то тут есть два варианта: либо поставить плагин к pyenv, или использовать их к той версии python c которой вы работаете. Соответственно если выбрать первый вариант, то созданные вами окружения будут добавлены к вашим версиям python и доступны через команду:

Добавить плагин легко, просто клонируем его из репозитория pyenv-virtualenv или pyenv-virtualenvwrapper:

Пример использования можно посмотреть в документации для pyenv-virtualenv и pyenv-virtualenvwrapper.
Все, а дальше пользуйтесь, как вам привычнее.

Пример использования

Теперь находясь в директории проекта можно запускать скрипт от нужной версии python не прилагая никаких действий. pyenv создает в директории файл .python-version который содержит в себе информацию о том какую версию python с каким окружение использовать для данного проекта.

Источник

Оцените статью