Перейти к содержимому

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

  • автор:

How do I downgrade my version of python from 3.7.5 to 3.6.5 on ubuntu

So currently, I have ubuntu 19. And it comes by default with python 3.7.5. I need to downgrade to 3.6.5.

I am using virtualenv

Bear Bile Farming is Torture's user avatar

4 Answers 4

The following talks about upgrade from 3.6.7 to 3.7.0 but you can use the same process for downgrade. You should not change the system python unless you really know what you’re doing

First Install Pyenv

Look at Pyenv Options

Look at Python Versions

Install a new Python

If you run into an issue with _ctypes install libffi-dev library

Now look at the versions

Select 3.7.0 for local environment

See that the version changed

Switch to a different folder

The python version may be different here depending on which python version you have set locally

Set pyenv version globally

This globally sets a python version for a user

Note that pyenv sets local version by adding a .python-version file

Note that pyenv knows the global version by looking at the

Install it from the pre-compiled Ubuntu deb package repos.

When prompted, pres ENTER to continue.

Alternatively, you can easily create a virtual environment.

Suppose you have python 3.8 (or higher) installed on the system, but for a specific task, you need python 3.7 (or lower). The best idea is to Create a virtual environment with python 3.7(or any 3.x, change the commands below according to your desired version. Below is an implementation of a virtual environment with python 3.7)

Steps: (Checked August 2022)

Install python 3.7 and it’s virtual environment packages.

sudo apt-get install python3.7-dev python3.7-venv

Find out where your python 3.7 is located by this command:

which python3.7 (Should be something like /usr/bin/python3.7, if not found, then install python 3.7 manually)

Create Virtual Environment in the Home directory.

/usr/bin/python3.7 -m venv

python —version (Should be python 3.7 now)

Done. Python 3.7 can be used in this virtual environment. Type which python , and you’ll see you have created python 3.7 in a virtual environment, rather than in the system globally.

click fraud protection

Вам нужно запустить программу, для которой требуется версия Python, отличная от той, что установлена ​​в вашей системе? Есть несколько способов решить эту проблему, но самый простой из них основан на инструменте под названием пиенв . Давайте кратко обсудим, что делает pyenv и почему вы должны его использовать, прежде чем объяснять, что именно вам нужно сделать, чтобы переключить на него версию Python по умолчанию.

Что такое pyenv и как это работает?

pyenv — это инструмент управления версиями Python, созданный из чистых сценариев оболочки, что означает, что он не зависит от Python. Это хорошо, потому что последнее, что вы хотите, — это загрязнять окружающую среду, устанавливая инструмент, который должен помочь вам лучше управлять ею.

Прелесть pyenv заключается в том, что он просто добавляет каталог вверху вашей переменной $PATH, которая сообщает операционной системе Linux, где искать исполняемые файлы, такие как Python. Этот новый каталог содержит облегченный исполняемый файл v, который передает вашу команду pyenv.

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

Вы должны увидеть несколько каталогов, разделенных двоеточием:

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

$ эхо -е $ < ПУТЬ//:/\\n >
/usr/local/sbin
/usr/local/bin
/usr/sbin
/usr/bin
/sbin
/bin
/usr/games
/usr/local/games

Когда вы используете команду python для запуска программного обеспечения, операционная система проходит через каталоги в переменной $PATH сверху вниз, пока не найдет тот, который содержит соответствующий исполняемый.

Чтобы быстро увидеть, какой это каталог, используйте команду whereis:

$ где питон
/usr/bin/python

Команда python -V может сообщить вам, какая версия Python установлена:

$ питон -V
Питон 2.7.18

Чтобы позволить вам использовать любую версию Python, которую вы хотите, не связываясь с той, которая была установлена ​​с вашей операционной системой. system, pyenv манипулирует переменной $PATH, позволяя вам изменять глобальную версию Python для каждого пользователя. без труда. Более того, вы также можете использовать определенные версии Python для отдельных проектов или установить определенную версию Python только для текущего сеанса оболочки.

Как установить пиенв?

Прежде чем устанавливать сам pyenv, следует убедиться в отсутствии неудовлетворенных системных зависимостей:

$ sudo apt-получить обновление ; sudo apt-get install make build-essential libssl-dev zlib1g-dev libbz2-dev libreadline-dev libsqlite3-dev git wget curl llvm libncursesw5-dev xz-utils tk-dev libxml2-dev libxmlsec1-dev libffi-dev liblzma-dev

Как только это будет сделано, вы можете использовать автоматический установщик для установки pyenv в вашей системе Linux:

$ завиток https://pyenv. бегать | бить

Затем вам нужно добавить следующие строки в ваш

/.bashrc или эквивалентный файл конфигурации, если вы используете оболочку, отличную от Bash:

экспортировать ПУТЬ = «$HOME/.pyenv/bin:$PATH»
оценка «$(pyenv инициализация -)»
оценка «$(pyenv virtualenv-инит -)»

Не волнуйтесь; автоматический установщик подскажет, что именно нужно добавить и куда. Наконец, вы можете перезапустить оболочку (закрыть терминал) и убедиться, что pyenv успешно установлен, отобразив его текущую версию:

$ pyenv —версия
пиенв 2.2.4

Как переключить версию Python с помощью pyenv?

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

$ pyenv установить 3.10.2

Чтобы отобразить список всех доступных версий, выполните следующие действия:

$ pyenv установить — список

Есть много разных версий на выбор, поэтому мы не будем копировать и вставлять их сюда, чтобы избавить ваше колесо прокрутки от усилий, которые потребуются для просмотра их всех.

Поскольку команда версии Python для печати (python -V), которую мы использовали ранее в этой статье, сообщает вам только то, что системная версия Python, вам нужно использовать команду pyenv, чтобы увидеть, какие версии теперь доступны для пьенв:

$ pyenv версии
* система ( задавать автор /home/david/. пиенв /version )
2.7.17
3.7.10
3.10.2

Как видите, теперь pyenv знает о трех версиях Python: системная версия (в нашем случае 2.7.18), 2.7.17, 3.7.10 и 3.10.2.

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

$ pyenv Глобальный 2.7.17
$ pyenv локальная 3.7.10
$ pyenv оболочка 3.10.2

В нашем случае мы использовали глобальную команду для понижения версии Python 2.7.18 до версии 2.7.17. Чтобы убедиться, что мы достигли желаемого результата, мы можем использовать две знакомые команды:

$ питон -V
Питон 2.7.17

Вот как легко понизить версию Python с помощью pyenv! Через некоторое время вы, возможно, захотите удалить несколько версий Python, которые вам больше не нужны. Следующая команда позволяет вам сделать это:

$ pyenv удалить < версия >

Вы можете увидеть больше полезных команд pyenv, набрав pyenv help в терминале. Рекомендуем также прочитать официальная документация на GitHub, чтобы лучше понять, как работает pyenv под капотом.

Заключение

Переключение или понижение версии Python — это то, что в какой-то момент приходится делать практически всем разработчикам и даже некоторым опытным пользователям Linux. К счастью, такие инструменты, как pyenv, облегчают задачу, позволяя вам достичь желаемой цели с помощью нескольких простых команд.

Lower the Python3 version

I’m using Ubuntu 20.04 and default Python3 version is 3.8.2 but I want to use the Python 3.7.6 .
I don’t care if the Python 3.8.2 will be uninstalled or not. I only want to make sure every time I use python3 command it runs the Python 3.7.6 (instead of 3.8.2).
What should I do?

mhn2's user avatar

1 Answer 1

Don’t mess with, remove or replace the preinstalled Python interpreters!

The easiest option for Ubuntu LTS releases is to add the deadsnakes PPA which provides the latest of each minor Python version (3.6.x, 3.7.x, 3.8.x, . ) as regular packages, so it integrates well with your system. Once installed, you can call those versions with the python3.6 etc. command instead of plain python3 .

Alternatively, you can use e.g. pyenv to manage multiple independent interpreter versions for your development projects. Find it here, or use the simple installer. This gives you more flexibility and control, but is also a bit more effort and complex IMO.

Yet another possibility would be to use a containerization technology such as Docker to have always the same, reproducible and isolated build and run environments for your development.

Besides though, most not too special Python 3 code is compatible with newer interpreters, unless you use specifically deprecated methods and features. It’s always good to keep testing your projects against newer releases and adapt/fix them as needed to keep them alive.

Как понизить Python с 3,7 до 3,6

Я пытаюсь работать с tenorflow, но ему нужен Python 3.6, и у меня установлена ​​версия 3.7. Я попытался сделать это через brew switch и pyenv, но это не работает. Кто-нибудь знает рабочий способ решения этой проблемы?

16 ответов

Вот каноническое резюме, в котором суммируются различные решения для различных операционных систем, на которых работает Python. Ниже приведены возможности для Microsoft Windows , Linux , macOS и прочего.

Как уже упоминалось, это всего лишь возможности — я ни в коем случае не утверждаю, что у меня есть полный список.

Майкрософт Виндоус

Опция 1

В общем, рекомендуется использовать виртуальные среды (я настоятельно рекомендую посмотреть официальную документацию Python ). При таком подходе вы легко можете настроить версии Python для конкретного проекта (а также библиотеки). Легко управляемый и лучшая часть: в Интернете есть множество руководств о том, как подойти к этому:

  • Использование VirtualEnv с несколькими версиями Python в Windows
  • https://www.freecodecamp.org/news/installing-multiple-python-versions-on-windows-using-virtualenv/
  • и т.п.

1.) Откройте командную строку («cmd») и введите pip install virtualenv .

2.) Установите желаемую версию Python через Помните: не добавляйте !

3.) Введите в командной строке: virtualenv \path\to\env -p \path\to\python_install.exe , в то время как \path\to\env должен быть путем, по которому будет находиться ваша виртуальная среда, и \path\to\python_install.exe тот, где находится ваша недавно (предположительно) установленная версия Python.

4.) Готово! Теперь у вас настроена виртуальная среда! Теперь, чтобы активировать виртуальную среду, запустите командный файл, который находится внутри \path\to\env\Scripts\activate.bat . (см. этот веб-сайт или официальное руководство по Python )

Вариант 2

Основной вариант — удалить ненужную версию Python и переустановить предпочтительную версию с . Чтобы удалить «старую» версию, перейдите по ссылке Control Panel -> «Uninstall a program» -> Search for «Python» -> Right-click on the Python name -> Uninstall . Имейте в виду, что в Python обычно хранится переменная PATH, поэтому вы также должны удалить ее — проверьте следующие ссылки для этого:

  • https://support.foundry.com/hc/en-us/articles/209642805-Q100127-How-to-delete-unset-environment-variables
  • Удалите нежелательное имя пути из переменной% path% с помощью пакета

Теперь еще раз проверьте, есть ли какие-либо оставшиеся файлы, в которых раньше хранился Python. Обычно вы можете найти все файлы Python по адресу C:\Program Files (x86)\Pythonxx , C:\Users\username\AppData\Local\Programs\Pythonxx или C:\Pythonxx или все они. Возможно, вы установили его в другой каталог — проверьте, где он когда-то был.

Теперь после деинсталляции просто переустановите нужную версию, перейдя на https://www.python.org/downloads/страницу загрузки и следуя обычному процессу установки. Я не буду вдаваться в подробности того, как установить Python.. Наконец, вы можете проверить, какая версия в настоящее время установлена, открыв командную строку и набрав python -V .

Вариант 3

Этот подход очень похож на второй — вы в основном удаляете старую версию и заменяете ее предпочитаемой версией. Единственное, что меняет его, касается того, как удалить нежелательный дистрибутив Python: просто запустите установщик Python3, который вы изначально использовали для установки Python (обычно он хранится в вашем каталоге Python, как упоминалось выше; для получения дополнительной помощи ознакомьтесь с этим ). Там у вас есть возможность repair or uninstall , продолжайте, выбрав uninstall и следуйте инструкциям программы удаления.

Независимо от того, как вы удаляете Python (есть много ресурсов по этой теме, например, этот вопрос о переполнении стека или проблемная ветка пользователя по имени Винсент Тан, опубликованная на сайте Stack Exchange Super User и т. Д.), Просто переустановите требуемый Версия Python, выполнив действия, указанные в Option 2 .

Вариант 4

Вариант 4 касается Анаконды. Пожалуйста, обратитесь к этому сайту, чтобы узнать, как установить Anaconda в Windows. Step 9 важно, поскольку вы не хотите устанавливать его в качестве Python по умолчанию — вы хотите запустить несколько версий Python:

Выберите, следует ли регистрировать Anaconda в качестве Python по умолчанию. Если вы не планируете устанавливать и запускать несколько версий Anaconda или несколько версий Python, примите значение по умолчанию и оставьте этот флажок установленным.

Следуйте официальному руководству, которое я указал выше.

После этого вы можете создать следующие команды индивидуальны в анаконде строки: Для перезаписи по умолчанию версия питона в систему мудра использовании conda install python=3.6 или для создания виртуальной среды используйте conda create -n $PYTHON36_ENV_NAME python=3.6 anaconda в то время как $PYTHON36_ENV_NAME это настраиваемое имя, которое вы можете установить. Кредит, где необходимо кредитование — пользователь @CermakM из ветки сильно повлиял на этот фрагмент.

В своем исследовании я обнаружил кучу полезных тем Stack Overflow — вы можете проверить их, если пойдете трудным путем с Anaconda:

Вариант 5

То, что следует ниже, не является понижением в классическом понимании — хотя для полноты картины я решил упомянуть и об этом подходе. В Windows вы также можете запускать несколько версий Python — печально известная ветка на StackOverflow занимается этим вопросом, поэтому я вежливо отсылаю вас к нему для дальнейшего чтения.

Linux

Опция 1

Довольно аналог третьего варианта для Windows. Я настоятельно рекомендую вам использовать виртуальную среду, такую ​​как Anaconda. Anaconda — или короткое conda — также доступна в Linux. Ознакомьтесь с официальной установочной документацией понизить версию Python с 3.8 до более низкой в ​​данной среде condaздесь . Еще раз этойэтот поток настоятельно рекомендуется о том, как перезаписать версию Python, соответственно, как конкретно создать среду с нужной версией Python.

Вариант 2

Еще одна настоятельно рекомендуемая виртуальная среда. Пользователь @Sawan Vaidya описал в по о том, как повысить или понизить версию Python с помощью Pyenv . Вы можете либо установить версию Python глобально, либо создать локальную среду — как описано в упомянутом потоке.

Вариант 3

Другой пользователь, а именно @Jeereddy, предложил использовать систему управления пакетами программного обеспечения. В подробно объяснил этот вариант :

Вариант 5

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

  1. Загрузите желаемую версию Python с https://www.python.org/downloads/release;https://www.python.org/downloads/release и установите ее как normal package .
  2. Запустить cd /Library/Frameworks/Python.framework/Version
  3. Выполнять ls чтобы перечислить все установленные версии Python
  4. Запустить sudo rm -rf 3.7 , удаление Python версии 3.7 — можно повторить для любой версии (версий), которую вы хотите удалить
  5. Проверять python3 -v , он должен отображать версию, которую вы изначально хотели установить

Вариант 6

Какая золотая жила текущем вопросе онэта нитьэта ветка ! Как подробно описал @nondetermistic (прямая ссылка на его сообщение ):

Установите исходный код Python следующим образом:

Теперь вы можете добавить загруженную версию ( /home/<user>/python3.6/bin ), а также lib к LD_LIBRARY_PATH или просто создайте виртуальную среду: /home/<user>/python3.6/bin/python3.6 -m venv env-python3.6 . Очень эстетичное и простое решение для запуска нескольких версий Python в вашей системе.

macOS

Опция 1

Использование with — кредит @Shayan с его ответом здесь :

1.) Установка с Homebrew :

2.) Клонирование репозитория GitHub для получения последней версии. pyenv версия:

3.) Определение переменных среды следующим образом

4.) Перезапуск оболочки так PATH изменить работы

5.) Проверка доступных версий Python

6.) Установка желаемой версии Python, например 3.6.

7.) Настройка глобально (вы также можете использовать его только в определенной среде )

8.) Проверьте версию Python, которую использует система — здесь должна отображаться ваша желаемая / пониженная версия.

Вариант 2

Как и в предыдущих подходах, вы также можете загрузить Anaconda на macOS. Для руководства по установке щелкните здесь . Использование почти такое же, как я уже описал в Option 4 принадлежащий Windows руководство. Пожалуйста, проверьте выше.

Другие варианты

В этом случае это становится довольно повторяющимся. Я предлагаю вам проверить следующие ресурсы для дальнейшего чтения:

  • https://prodevsblog.com/questions/125949/macos-how-to-downgrade-homebrew-python/
  • https://www.xspdf.com/resolution/51291818.html
  • Как понизить версию Python с 3.8 до 3.7 (mac)
  • https://weknowinc.com/blog/running-multiple-python-versions-mac-osx

Разное

Когда я писал этот пост, я не знал, где провести черту. При поиске операционных систем, поддерживаемых Python в настоящее время, вы получаете огромный список, в том числе упомянутые мной, например, Linux , Microsoft Windows и macOS , хотя, очевидно, что разные дистрибутивы Linux обрабатываются единолично, например CentOS, Arch Linux или Fedora, заслуживают пятно тоже — или я должен сделать отдельные варианты для Windows 10, 7 и т. д.?

Из-за высокой степени повторяемости таких модулей, как Homebrew, Conda или им подобных, я решил ограничить свой список «тремя основными» операционными системами — такими дистрибутивами, как Ubuntu ( этом вопросекак мне понизить мою версию python с 3.7.5 до 3.6.5 на ubuntuпереполнению стека вопрос ), CentOS ( как понизить версию python на CentOS?) можно легко исследовать в Stack Overflow. Чаще всего вы можете применять решения из вкладки Linux для указанных дистрибутивов. То же самое и с Windows и macOS (версиями).

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *