Как понизить версию Python 3.7 до 3.6: пошаговое руководство

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

Зачем понижать версию Python?

Есть несколько ключевых причин, по которым вам может потребоваться перейти с Python 3.7 на 3.6:

  • Вы полагаетесь на библиотеку или фреймворк, который еще не совместим с Python 3.7.
  • Вам необходимо локально реплицировать производственную среду, работающую на Python 3.6.
  • Вы работаете с устаревшими базами кода, для правильной работы которых требуется Python 3.6.
  • Вы хотите использовать определенные функции, присутствующие только в Python 3.6.

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

Настройка перехода на более раннюю версию Python

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

Вот как настроить виртуальную среду:

python3 -m venv my_venv
source my_venv/bin/activate

Это создаст изолированную среду Python под названием my_venv. Теперь мы можем устанавливать пакеты здесь, не затрагивая установку системного Python.

Давайте сначала проверим нашу стартовую версию Python:

python --version
# Python 3.7.4

Сейчас мы используем Python 3.7.4. Наша цель — понизить версию до 3.6.

Действия по понижению версии Python в Windows

Есть несколько хороших вариантов перехода на более раннюю версию Python в Windows:

1. Установите более старую версию Python

Самый простой способ — установить более старую версию Python отдельно вместе с существующей установкой.

  1. Загрузите установщик Python 3.6 для Windows с сайта python.org.
  2. Запустите установщик, обязательно отметив «Добавить Python в PATH»:
  3. Откройте новое окно терминала и убедитесь, что Python понижен до версии 3.6:
python --version
# Python 3.6.8

Теперь у нас доступен Python 3.6.8, изолированный от системного Python 3.7. Чтобы переключиться обратно, закройте терминал и снова откройте или запустите:

path %PATH%;
python --version # Python 3.7 again

2. Используйте диспетчер версий pyenv.

pyenv — полезный инструмент для управления несколькими версиями Python.

Для установки в Windows:

# Install pyenv using pip
pip install pyenv-win 
 
# Set environment variables
pyenv init
 
# reload shell

Теперь мы можем установить Python 3.6:

pyenv install 3.6.8
pyenv global 3.6.8

Проверьте пониженную версию Python:

python --version
# Python 3.6.8

Закончив работу с версией 3.6, переключите версии с помощью:

pyenv global 3.7.4

Сравнение методов перехода на более раннюю версию Python в Windows

МетодПлюсыМинусы
pyenvЛегко переключать версииМедленная установка
виртуаленвИспользует системный PythonНужен полный путь

Понижение версии Python на MacOS

Два лучших варианта перехода на более раннюю версию Python на Mac — это pyenv и virtualenv.

1. Метод pyenv

Как говорилось выше, pyenv — отличный менеджер версий для MacOS.

Установка проста с помощью Homebrew:

brew update
brew install pyenv

Теперь установите Python 3.6:

pyenv install 3.6.8
pyenv global 3.6.8
python --version
# Python 3.6.8

2. Метод Virtualenv

Virtualenv включен по умолчанию при установке Python.

Создайте виртуальную среду Python 3.6:

virtualenv -p /usr/bin/python3.6 my_venv
source my_venv/bin/activate
python --version
# Python 3.6.8  

Это изолирует Python 3.6 без необходимости изменения глобальных версий.

Деактивируйте, когда закончите:

deactivate

Сравнение методов перехода на более раннюю версию Mac Python

МетодПлюсыМинусы
pyenvЛегко переключать версииМедленная установка
виртуаленвИспользует системный PythonНужен полный путь

Понижение версии Python в Linux

Linux предлагает наибольшую гибкость при переходе на более раннюю версию Python. Вот несколько отличных вариантов.

1. Установите более старую версию Python

Загрузить и вручную установить более старую версию Python очень просто:

wget https://www.python.org/ftp/python/3.6.8/Python-3.6.8.tgz
tar xzf Python-3.6.8.tgz
cd Python-3.6.8
./configure --enable-optimizations
make -j 8
sudo make altinstall

При этом Python 3.6.8 компилируется из исходного кода и устанавливается отдельно от системного Python.

Теперь убедитесь, что Python 3.6.8 активен:

python --version
# Python 3.6.8

2. Используйте pyenv

Наш друг pyenv также отлично работает в Linux!

Установите pyenv и настройте переменные среды:

# Install pyenv 
curl https://pyenv.run | bash
 
# Add pyenv init to shell config
echo 'eval "$(pyenv init -)"' >> ~/.bashrc  
 
# Reload shell
exec "$SHELL"

Теперь установите Python 3.6.8:

pyenv install 3.6.8
pyenv global 3.6.8
python --version  
# Python 3.6.8

По завершении измените версии:

pyenv global 3.7 

3. Используйте Virtualenv

Как и на других платформах, виртуальные среды Python — отличный способ управлять версиями Python в Linux.

Создайте виртуальную среду под названием my_venv с помощью Python 3.6:

python3.6 -m venv my_venv 
source my_venv/bin/activate
python --version
# Python 3.6.8

Python теперь изолирован в my_venv без каких-либо системных изменений.

Деактивируйте среду, когда закончите:

deactivate 

Сравнение методов перехода на Linux Python

МетодПлюсыМинусы
Установить из источникаПросто, без зависимостейРучной процесс
pyenvМощный менеджер версийСложная настройка
виртуаленвИспользует системный PythonУправление окружением

Резюме и следующие шаги

Мы рассмотрели несколько эффективных методов перехода с Python 3.7 на 3.6 на платформах Windows, MacOS и Linux. Выбор зависит от ваших потребностей:

  • Установить старую версию – быстро и автономно
  • pyenv – многофункциональный менеджер версий
  • Виртуальность – изоляция среды

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

#python 

Как понизить версию Python 3.7 до 3.6: пошаговое руководство
1.40 GEEK