Как установить несколько версий на Windows 10 — вопрос, который возникает у разработчиков, тестирующих проекты на разных версиях языка. Windows 10 позволяет держать несколько версий одновременно, но для этого нужно правильно настроить окружение, чтобы система не путала их между собой.
В этой статье разберём два основных способа: ручная установка с настройкой переменных окружения и использование менеджеров версий вроде pyenv-win. Также покажем, как переключаться между версиями без конфликтов и избежать типичных ошибок.
Почему нужно несколько версий Python
Каждый проект может требовать свою версию Python. Например, старые библиотеки могут не работать на Python 3.12, а новые фичи доступны только в последних релизах. Без возможности переключения между версиями разработчику придётся переустанавливать каждый раз, когда нужно тестировать код на другой версии.
Кроме того, некоторые фреймворки (например, Django или Flask) имеют разные требования к версии языка. В коммерческой разработке это особенно актуально: один клиент использует Python 3.8, другой — 3.11.
Чтобы проверить текущую версию Python, выполните в командной строке python --version или python3 --version. Если команда не работает — не добавлен в или не установлен
| Способ | Плюсы | Минусы |
|---|---|---|
| Ручная установка | Полный контроль над версиями, нет зависимости от сторонних инструментов | Требует ручной настройки PATH, риск конфликтов |
| Менеджеры версий (pyenv-win) | Удобное переключение, автоматическая настройка окружения | Дополнительная установка, возможны баги на Windows |
Виртуальные окружения (venv) | Изолирует зависимости для каждого проекта | Не решает проблему установки самих версий Python |
Способы установки нескольких версий
Есть три основных подхода к установке нескольких версий на Windows 10:
Выбор способа зависит от ваших задач. Для простых случаев хватит ручной установки, для активной работы с разными версиями лучше использовать pyenv-win.
Ручная установка: пошаговая инструкция
Скачайте установочные файлы нужных версий с официального сайта python.org. Важно: выбирайте Windows x86-64 executable installer для 64-битной системы или Windows x86 для 32-битной. Не используйте Add Python to PATH во время установки — это сделаем вручную позже.
При установке:
- Укажите разные папки для каждой версии (например,
C:\Python38,C:\Python311). - Отключите галочку
Add Python to PATH— это предотвратит конфликты. - Запомните путь к папке с
python.exeдля каждой версии.
После установки всех версий нужно вручную настроить переменную окружения PATH.
Настройка для нескольких версий
Чтобы видела все установленные версии Python, нужно добавить пути к их папкам в переменную PATH. Но если просто добавить все пути, система будет использовать первую найденную версию по умолчанию. Чтобы этого избежать:
- Откройте
Панель управления > Система > Дополнительные параметры системы > Переменные среды. - В разделе
Системные переменныенайдитеPathи нажмитеИзменить. - Добавьте пути к папкам с Python (например,
C:\Python38,C:\Python311). Порядок важен: первая папка в списке будет использоваться по умолчанию. - Сохраните изменения и перезагрузите командную строку.
Теперь, чтобы запустить конкретную версию, используйте полный путь: C:\Python38\python.exe или создайте в autoexec.bat (для старых систем) или используйте псевдонимы в PowerShell.
⚠️ Внимание: Изменение может привести к конфликтам, если в разных версиях есть одинаковые имена скриптов (например,pip). Всегда проверяйте версию перед установкой пакетов:python -V.
Использование pyenv-win для управления версиями
pyenv-win — это форк популярного pyenv для Windows, который позволяет устанавливать и переключаться между версиями без ручной настройки PATH. Это удобно, если вам нужно часто менять версии.
| Команда | Описание | Пример |
|---|---|---|
pyenv install | Показывает доступные для установки версии Python | pyenv install --list |
pyenv install [version] | Устанавливает указанную версию | pyenv install 3.11.4 |
pyenv global | Устанавливает глобальную версию Python | pyenv global 3.11.4 |
pyenv local | Устанавливает локальную версию для текущей папки | pyenv local 3.8.12 |
Установить pyenv-win можно через или командную строку с помощью пакетного менеджера Chocolatey:
choco install pyenv-win -y
После установки перезагрузите терминал и проверьте работу pyenv командой pyenv --version.
Виртуальные окружения: изоляция проектов
Даже если у вас установлено несколько версий Python, для каждого проекта лучше создать виртуальное окружение. Это изолирует зависимости и предотвращает конфликты между библиотеками.
Для создания виртуального окружения в нужной версии используйте команду:
C:\Python311\python -m venv my_project_env
Активируйте окружение:
.\my_project_env\Scripts\activate
Виртуальные окружения не заменяют установку нескольких версий Python, но если в проекте нужна конкретная версия — создавайте окружение на её основе
Практика: установка и переключение версий
Предположим, у вас есть два проекта: один требует Python 3.8, другой — Python 3.11. Вот как организовать работу:
- Установите обе версии в разные папки (например,
C:\Python38иC:\Python311). - Для первого проекта создайте виртуальное окружение на базе Python 3.8:
C:\Python38\python -m venv project1_env. - Активируйте окружение и установите зависимости:
.\project1_env\Scripts\activate, затемpip install -r requirements.txt. - Для второго проекта повторите шаги 2–3, но используйте Python 3.11.
Теперь вы можете работать с обеими проектами, не переустанавливая Python.
Чек-лист перед началом работы
Часто задаваемые вопросы
Можно ли удалить старую версию после установки новой?
Да, можно, но только если у вас нет проектов, зависящих от старой версии. Перед удалением проверьте все виртуальные окружения и скрипты, которые могут использовать эту версию. Если уверены, что она не нужна — удаляйте через Панель управления > Программы и компоненты.
Почему после установки новой версии перестала работать команда pip?
Скорее всего, новая версия не добавлена в PATH, или в стоит путь к старой версии. Проверьте порядок путей в переменной окружения: первая папка в списке должна содержать нужную версию Python. Или используйте полный путь: C:\Python311\Scripts\pip.
Как проверить, какая версия используется в виртуальном окружении?
Активируйте окружение и выполните команду python --version. Она покажет версию Python, которая используется в текущем окружении. Если версия неверная — возможно, окружение создано на базе другой версии Python.
Можно ли использовать pyenv-win и виртуальные окружения вместе?
Да, это рекомендуемый подход. pyenv-win управляет версиями на уровне системы, а виртуальные окружения изолируют зависимости для каждого проекта. Сначала выбираете нужную версию через pyenv, затем создаёте виртуальное окружение на её основе.