Установка Python на Windows, macOS и Linux без вреда системе
Как поставить Python на три ОС, не сломав системный интерпретатор и не поймав команду «pip installed globally». Разбор ловушек PATH, системного Python и виртуальных окружений.

За 20–30 минут вы получите рабочий Python 3.12 или 3.13, запускающийся из терминала, и понимание, почему нельзя ставить пакеты через sudo pip и трогать тот Python, что уже лежит в системе. Ошибка на этом шаге стоит дорого: сломанный системный интерпретатор на Linux может уронить пакетный менеджер, а на macOS — часть утилит Apple. Разберём установку отдельно для каждой ОС и покажем, как не наступить на грабли PATH.
Что нужно иметь до начала
- Доступ к терминалу: PowerShell или «Командная строка» на Windows, Terminal на macOS, любой эмулятор на Linux.
- Права администратора для установки (на Linux — доступ к
sudoдля системного менеджера пакетов). - Подключение к интернету для скачивания дистрибутива.
- Понимание, что системный Python — не ваш Python. На macOS и большинстве Linux он уже стоит и обслуживает саму ОС. Мы ставим отдельный, для своих проектов.
Актуальная стабильная ветка на момент написания — Python 3.13.x, широко используется и 3.12.x. Ставьте одну из них; не берите 3.8 и старше — они уже вне поддержки.
Главное правило: системный интерпретатор обслуживает операционную систему, а не ваши проекты. Свои пакеты кладите в виртуальное окружение, а не в системный Python.
Windows
На Windows системного Python нет, поэтому сломать нечего — но есть ловушка PATH и путаница с версиями из Microsoft Store.
- Откройте python.org/downloads/windows и скачайте установщик «Windows installer (64-bit)» для нужной версии.
- Запустите установщик. На первом экране поставьте галку Add python.exe to PATH внизу окна. Без неё команда
pythonне найдётся в терминале. - Нажмите Install Now. По умолчанию ставится и
pip, и лаунчерpy. - Закройте и заново откройте PowerShell (переменные окружения читаются при старте оболочки).
- Проверка: выполните
py --version— должно вывести номер версии. Командаpy— это лаунчер, он сам выбирает установленную версию.
Проверьте, что pip тоже на месте:
py -m pip --version
Вывод должен содержать путь к вашей установке в каталоге вида ...\Python313\, а не к папке Microsoft Store.
Почему не Microsoft Store
Windows иногда подсовывает «заглушку»: набираете python, открывается страница Store. Это происходит, когда python.org-версия не в PATH. Установка с галкой PATH перекрывает заглушку. Версия из Store рабочая, но кладёт файлы в изолированный каталог, что позже мешает некоторым инструментам находить интерпретатор.
macOS
Здесь ловушка серьёзнее: в системе уже есть Python, который трогать нельзя. Он нужен утилитам Apple. Никогда не ставьте пакеты в него и не удаляйте его.
Рекомендуемый путь — установить отдельный Python через Homebrew или официальный установщик с python.org.
Вариант с Homebrew
- Установите Homebrew командой с его главной страницы, если его ещё нет.
- Поставьте Python:
brew install python@3.13 - Проверьте, куда указывает команда:
which python3. Путь должен вести в каталог Homebrew (обычно/opt/homebrew/binна Apple Silicon или/usr/local/binна Intel), а не в/usr/bin. - Проверка версии:
python3 --version.
Homebrew ставит символические ссылки так, что python3 в PATH указывает на свежую версию, а системный /usr/bin/python3 остаётся нетронутым.
Вариант с python.org
Скачайте .pkg-установщик с python.org/downloads/macos и запустите. Он положит Python в /Library/Frameworks/ и добавит ссылки в /usr/local/bin. После установки проверьте python3 --version.
Linux
Python уже установлен и связан с системными утилитами: на Debian/Ubuntu, например, от него зависит часть инструментов. Прямое вмешательство в системный интерпретатор через sudo pip install — самый частый способ сломать систему.
Использовать то, что уже есть
Чаще всего отдельный Python ставить не нужно — системного достаточно для разработки, если не лезть в него пакетами. Проверьте версию:
python3 --version
Если версия устраивает, доставьте инструмент для виртуальных окружений и pip. На Debian/Ubuntu:
sudo apt update
sudo apt install python3-venv python3-pip
На Fedora пакетный менеджер другой (dnf), на Arch — pacman. Точные имена пакетов сверяйте в документации вашего дистрибутива.
Если нужна другая версия
Когда системная версия слишком старая, не заменяйте её. Поставьте вторую рядом. На Ubuntu это часто делают через официальный репозиторий deadsnakes, на других дистрибутивах — через сборку из исходников или инструменты вроде pyenv. Ключевой принцип тот же: новая версия живёт отдельно, системная остаётся на месте.
Обязательный следующий шаг: виртуальное окружение
Что бы вы ни поставили, пакеты для проектов ставьте не глобально, а в виртуальное окружение. Оно изолирует зависимости проекта от системы и друг от друга. Создание одинаково на всех трёх ОС, отличается только команда активации.
# создание окружения в папке проекта
python3 -m venv .venv
# активация на macOS / Linux
source .venv/bin/activate
# активация на Windows (PowerShell)
.venv\Scripts\Activate.ps1
После активации в начале строки терминала появится (.venv). Теперь pip install кладёт пакеты только внутрь этой папки, и системный Python остаётся чистым. Выйти — командой deactivate.
Про предупреждение externally-managed-environment
С недавних версий системный pip на Linux и в Homebrew блокирует установку глобально и выдаёт ошибку externally-managed-environment. Это не баг, а защита. Правильная реакция — создать venv, а не обходить блокировку флагом. Обход ломает ровно то, от чего ошибка предупреждает.
Сравнение способов
| ОС | Способ | Плюс | Риск |
|---|---|---|---|
| Windows | python.org + PATH | Лаунчер py, всё в одном | Забыть галку PATH |
| macOS | Homebrew | Легко обновлять, не трогает системный | Путаница which python3 |
| macOS/Linux | Системный Python | Уже установлен | Установка пакетов глобально ломает ОС |
| Linux | Отдельная версия рядом | Не задевает системную | Сложнее в настройке |
Если не получилось
- Windows:
'python' is not recognized as an internal or external command— Python не в PATH. Переустановите с галкой Add python.exe to PATH или добавьте путь вручную, затем перезапустите терминал. - Windows: при вводе
pythonоткрывается Microsoft Store — сработала заглушка. Отключите её в «Параметры → Приложения → Псевдонимы выполнения приложений» или используйтеpy. - macOS/Linux:
error: externally-managed-environmentприpip install— вы ставите в системный Python. Создайте и активируйте venv, повторите установку внутри него. - macOS:
python3указывает не на ту версию — проверьтеwhich python3и порядок каталогов в PATH. Homebrew-путь должен идти раньше/usr/bin. - PowerShell:
cannot be loaded because running scripts is disabledпри активации venv — политика выполнения скриптов. Разрешите её для текущего пользователя командойSet-ExecutionPolicy -Scope CurrentUser RemoteSignedи подтвердите.
Что дальше
После установки проверьте связку тремя командами: python3 --version, python3 -m pip --version, создание venv. Дальше — привыкните заводить отдельное окружение под каждый проект и держать зависимости в requirements.txt или через инструмент вроде pip freeze. Управление несколькими версиями Python на одной машине — отдельная тема, здесь мы её не разворачиваем; когда до неё дойдёте, смотрите в сторону pyenv или встроенного лаунчера py на Windows.
Разбор научной статьи: Сложный текст — понятным языком, с терминами
Спросить за 12 ₽Источники: Python — официальные загрузки и документация по установке, Python docs — venv, создание виртуальных окружений
Частые вопросы
У меня уже установлен Python 3.11, надо ли ставить 3.13?
Можно ли просто удалить системный Python на Linux и поставить свежий?
Почему pip выдаёт ошибку externally-managed-environment и это опасно обходить?
Что делать, если команда python работает, а python3 — нет, или наоборот?
Нужен ли Anaconda вместо обычного Python?
Активация venv в PowerShell выдаёт ошибку про disabled scripts — это безопасно исправлять?
Материал носит информационный характер и подготовлен редакцией «Агентуры». Он не является офертой, рекламой или индивидуальной консультацией. Упомянутые продукты, компании и торговые знаки принадлежат их правообладателям. Перед принятием решений, влекущих юридические или финансовые последствия, обратитесь к профильному специалисту.