Как изменить версию python
На одной рабочей машине одновременно может быть установлено несколько версий Python. Это бывает полезно, когда идет работа с некоторыми внешними библиотеками, которые поддерживают разные версии python, либо в силу каких-то других причин нам надо использовать несколько разных версий. Например, на момент написания статьи последней и актуальной является версия Python 3.11 . Но, допустим, необходимо также установить версию 3.10 , как в этом случае управлять отдельными версиями Python?
Windows
На странице загрузок https://www.python.org/downloads/ мы можем найти ссылку на нужную версию:
И также загрузить ее и установить:
Чтобы при использовании интерпретатора Python не прописывать к нему весь путь, добавим при установке его в переменные среды. Но здесь надо учитывать, что в переменных среды может содержаться несколько путей к разным интерпретаторам Python:
Та версия Python, которая находится выше, будет версией по умолчанию. С помощью кнопки «Вверх» можно нужную нам версию переместить в начало, сделав версией по умолчанию. Например, в моем случае это версия 3.11. Соответственно, если я введу в терминале команду
python --version
C:\python>python --version Python 3.11.0
Для обращения к версии 3.10 (и всем другим версиям) необходимо использовать указывать номер версии:
C:\python>py -3.10 --version Python 3.10.9
например, выполнение скрипта hello.py с помощью версии 3.10:
py -3.10 hello.py
Подобным образом можно вызывать и другие версии Python.
MacOS
На MacOS можно установить разные версии, например, загрузив с официального сайта пакет установщика для определенной версии.
Для обращения к определенной версии Python на MacOS указываем явным образом подверсию в формате python3.[номер_подверсии] . Например, у меня установлена версия Python 3.10. Проверим ее версию:
python3.10 --version
Аналогично обращении к версии python3.9 (при условии если она установлена)
python3.9 --version
К примеру выполнение скрипта hello.py с помощью версии python 3.10:
python3.10 hello.py
Linux
На Linux также можно установить одновременно несколько версий Python. Например, установка версий 3.10 и 3.11:
sudo apt-get install python3.10 sudo apt-get install python3.11
Одна из версий является версий по умолчанию. И для обращения к ней достаточно прописать python3 , например, проверим версию по умолчанию:
python3 --version
Для обращения к другим версиям надо указывать подверсию:
python3.10 --version python3.11 --version
Например, выполнение скрипта hello с помощью версии Python 3.10:
python3.10 hello.py
Но может сложиться ситуация, когда нам надо изменить версию по умолчанию. В этом случае применяется команда update-alternatives для связывания определенной версии Python с командой python3. Например, мы хотим установить в качестве версии по умолчанию Python 3.11. В этом случае последовательно выполним следующие команды:
sudo update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.10 1 sudo update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.11 2
Числа справа указывают на приоритет/состояние. Так, для версии 3.11 указан больший приоритет, поэтому при обращении к python3 будет использоваться именно версия 3.11 (в моем случае это Python 3.11.0rc1)
С помощью команды
sudo update-alternatives --config python3
можно изменить версию по умолчанию
Поменять версию python в windows 10
Собственно у меня в системе(win 10) 2 версии python, нужны обе. Как можно их переключать? В ситуации на скрине, почему версию пишет 2.7, а запускается 3.8? Читал что нужно в системных переменных PATH что то поменять, но что именно, толковой информации не нашел.
Отслеживать
задан 4 июн 2020 в 11:34
51 1 1 золотой знак 1 1 серебряный знак 3 3 бронзовых знака
я бы советовал управлять версиями Python используя виртиуальные окружения
4 июн 2020 в 11:41
1 ответ 1
Сортировка: Сброс на вариант по умолчанию
Утилита py - это лаунчер, который с помощью ключей командной строки позволяет запускать нужную версию Python (из установленных на данном компьютере). Справка по этой утилите:
C:\Users\User>py --help Python Launcher for Windows Version 3.8.1150.1013 usage: py [launcher-args] [python-args] script [script-args] Launcher arguments: -2 : Launch the latest Python 2.x version -3 : Launch the latest Python 3.x version -X.Y : Launch the specified Python version The above all default to 64 bit if a matching 64 bit python is present. -X.Y-32: Launch the specified 32bit Python version -X-32 : Launch the latest 32bit Python X version -X.Y-64: Launch the specified 64bit Python version -X-64 : Launch the latest 64bit Python X version -0 --list : List the available pythons -0p --list-paths : List with paths
Т.е., если вам нужно запустить Python 2.7, нужно в командной строке указать py -2.7 или py -2 (тогда будет запущен интерпретатор Python самой новой версии из "ветки" 2 из установленных).
Также эта утилита умеет брать версию Python из shebang строки скрипта: если в начале скрипта написать #!python2.7 , и запустить скрипт с помощью команды
py имя_скрипта.py , то скрипт будет запущен с помощью Python версии 2.7 (или другой версии, которую вы укажете).
- Документация: Python Launcher for Windows
- PEP 397 -- Python launcher for Windows
Как изменить версию Python в Ubuntu и Debian
Python — это язык программирования высокого уровня, широко используемый для системного программирования. Он доступен для всех популярных операционных систем. Вы можете установить более одной версии Python в одной системе. После установки нескольких версий Python вы можете изменить Python по умолчанию с помощью инструмента альтернатив обновления.
Всем разработчикам Python рекомендуется использовать виртуальную среду для приложений. Что обеспечивает изолированную среду для приложения с определенной версией Python.
Изменить версию Python в Ubuntu и Debian
Инструмент командной строки update-alternatives используется для создания и поддержки символических ссылок для предопределенных команд. С помощью этого мы можем легко переключать команды на разные версии. Для этого руководства в системе Debian установлены Python3.9 и Python2.7. Мы создадим группу для обеих команд и установим символические ссылки.
Создайте символическую ссылку из /usr/bin/python2.7 в /usr/bin/python и установите имя группы как «python». Впоследствии имя группы будет использоваться для изменения ссылок.
sudo update-alternatives --install /usr/bin/python python /usr/bin/python2.7 1
update-alternatives: using /usr/bin/python2.7 to provide /usr/bin/python (python) in auto mode
Измените символическую ссылку в /usr/bin/python3.9 на /usr/bin/python и установите имя группы на «python». Имя группы должно быть одинаковым для всех версий Python.
sudo update-alternatives --install /usr/bin/python python /usr/bin/python3.9 2
update-alternatives: using /usr/bin/python3.9 to provide /usr/bin/python (python) in auto mode
Повторите шаг 2, чтобы добавить несколько версий Python в группу, которая уже установлена в вашей системе.
На данный момент вы добавили две бинарные версии Python к имени группы «python». Теперь вы можете легко переключиться на любую версию с помощью следующих команд. Здесь «python» — это имя группы, определенное в приведенных выше командах.
sudo update-alternatives --config python
There are 2 choices for the alternative python (providing /usr/bin/python). Selection Path Priority Status ------------------------------------------------------------ 0 /usr/bin/python3.9 2 auto mode * 1 /usr/bin/python2.7 1 manual mode 2 /usr/bin/python3.9 2 manual mode Press to keep the current choice[*], or type selection number:
В этом выводе выше Python 2.7 установлена как текущая версия. Чтобы изменить его на Python 3.9, вам нужно ввести 0 или 2 и нажать Enter.
Это все. Текущая версия Python изменилась в вашей системе. Просто введите следующую команду, чтобы просмотреть правильно активную версию Python.
python -V
Python 3.9.2
Вы можете добавить несколько версий Python в группу (шаги: 01 и 02) и легко переключаться между ними.
Вывод
В этом руководстве вы узнали, как изменить версии Python по умолчанию в ваших системах Ubuntu и Debian Linux. Вместо переключения версий вы также можете настроить виртуальную среду Python для своих приложений.
Supportaci se ti piacciono i nostri contenuti. Grazie.
Noviello.it Newsletter
Ricevi gli ultimi approfondimenti direttamente nella tua casella di posta!
Python-сообщество
- Начало
- » Django
- » Как сменить версию python по умолчанию?
#1 Янв. 5, 2021 09:06:10
dimon128 Зарегистрирован: 2020-04-22 Сообщения: 3 Репутация: 0 Профиль Отправить e-mail
Как сменить версию python по умолчанию?
Добрый день.
Народ, начинаю изучать Джанго. Для начала надо установить progectstart, но в момент установки появляется ошибка, что нет модуля “secret” вычитал он появляется с версии 3.6. Установил версии python 3.8, 3.9.
Но при проверке python –version показывает версию 3.5
Подскажите пожалуйста как изменить версию python по умолчанию. Нигде не могу найти
#2 Янв. 5, 2021 09:24:44
Stright От: Кострома Зарегистрирован: 2015-01-20 Сообщения: 139 Репутация: 16 Профиль Отправить e-mail
Как сменить версию python по умолчанию?
Для управления версиями python я пользуюсь pyenv и плагином для него pyenv-virtualenv (https://github.com/pyenv/pyenv, https://github.com/pyenv/pyenv-virtualenv).
Тут вкратце описано, как это устанавливать и как этим пользоваться: https://khashtamov.com/ru/pyenv-python/
Но вы не написали, какая у вас ОС. То, что описано выше не работает для windows. Есть форк pyenv - pyenv-win, но я им не пользовался
Отредактировано Stright (Янв. 5, 2021 09:30:49)