Найти полный путь интерпретатора Python?
Как найти полный путь к текущему запущенному интерпретатору Python из текущего исполняемого Python script?
5 ответов
sys.executable содержит полный путь к текущему запущенному интерпретатору Python.
Просто отметив другой способ сомнительной полезности, используя os.environ :
Существует несколько альтернативных способов определения используемого в настоящее время python в Linux: 1) which python . 2) команда command -v python 3) type python команда
Аналогично, в Windows с Cygwin также будет результат.
Если вы уже находитесь в оболочке python. Попробуйте любой из них. Примечание. Это альтернативный способ. Не лучший питонический путь.
Как узнать путь к интерпретатору python
Для создания программ на Python нам потребуется интерпретатор. Для его установки перейдем на страницу https://www.python.org/downloads/ и найдем ссылку на загрузку последней версии языка:

По нажатию на кнопку будет загружен соответствующей текущей ОС установщик Python. Следует учитывать, что Windows 7 и более ранние версии не поддерживаются.
На ОС Windows при запуске инсталлятора запускает окно мастера установки:

Здесь мы можем задать путь, по которому будет устанавливаться интерпретатор. Оставим его по умолчанию, то есть C:\Users\[имя_пользователя]\AppData\Local\Programs\Python\Python311\ .
Кроме того, в самом низу отметим флажок «Add Python 3.11 to PATH», чтобы добавить путь к интерпретатору в переменные среды.
После этого мы можем проверить установку Python и его версию, запустив в командной строке/треминале команду
Запуск интерпретатора
После установки интерпретатора, как было описано в прошлой теме, мы можем начать создавать приложения на Python. Итак, создадим первую простенькую программу.
Как было сказано в прошлой теме, программа интерпретатора, если при установке не был изменен адрес, по умолчанию устанавливается на Linux по пути usr/local/bin/python311 , а на Windows по пути C:\Users\[имя_пользователя]\AppData\Local\Programs\Python\Python311\ и представляет файл под названием python.exe .

Запустим интерпретатор и введем в него следующую строку:
И консоль выведет строку «hello world»:

Для этой программы использовалась функция print() , которая выводит некоторую строку на консоль.
Создание файла программы
В реальности, как правило, программы определяются во внешних файлах-скриптах и затем передаются интерпретатору на выполнение. Поэтому создадим файл программы. Для этого на диске C или где-нибудь в другом месте файловой системы определим для скриптов папку python . А в этой папке создадим новый текстовый файл, который назовем hello.py . По умолчанию файлы с кодом на языке Python, как правило, имеют расширение py .

Откроем этот файл в любом текстовом редакторе и добавим в него следующий код:

Скрипт состоит из двух строк. Первая строка с помощью функции input() ожидает ввода пользователем своего имени. Введенное имя затем попадает в переменную name .
Вторая строка с помощью функции print() выводит приветствие вместе с введенным именем.
Теперь запустим командную строку/терминал и с помощью команды cd перейдем к папке, где находится файл с исходным кодом hello.py (например, в моем случае это папка C:\python).
Далее вначале введем полный путь к интерпретатору, а затем полный путь к файлу скрипта. К примеру, в моем случае в консоль надо будет вести:
Но если при установке была указана опция «Add Python 3.11 to PATH» , то есть путь к интерпретатору Python был добавлен в переменные среды, то вместо полного пути к интерпретатору можно просто написать python:
Либо даже можно сократить:
Варианты с обоими способами запуска:

В итоге программа выведет приглашение к вводу имени, а затем приветствие.
Разбираем модуль sys

Модуль sys предоставляет системе особые параметры и функции. В данном разделе мы рассмотрим следующее:
- sys.argv
- sys.executable
- sys.exit
- sys.modules
- sys.path
- sys.platform
- sys.stdin/stdout/stderr
sys.argv
Значение sys.argv – это список аргументов командной строки, которые причастны к скрипту Python. Первый аргумент, argv[0], имеет аналогичное скрипту Python наименование. В зависимости от платформы, на которой вы работаете, первый аргумент может содержать полный путь к скрипту или к названию файла. Для дополнительных деталей обратитесь к документации. А тем временем, попробуем поработать с парочкой примеров, чтобы познакомиться с этим инструментом:
Если вы запустите это в интерпретаторе, вы получите список с пустой строкой. Давайте создадим файл под названием sysargv.py, со следующим содержимым:
Теперь запустите код в IDLE. Вы увидите список с одним элементом, который содержит путь к вашему скрипту. Попробуем передать скрипту несколько аргументов. Откройте окно терминала \ консоли и при помощи команды cd измените каталоги на тот, в котором находится скрипт. После этого, запустите что-то наподобие этого:

sys.argv
Обратите внимание на то, что будет выведено на экран:
Первый аргумент – это название файла нашего скрипта. Следующие два аргумента в списке – это те, что мы передали нашему скрипту в командной строке.
sys.executable
Значение sys.executable – это полный путь к интерпретатору Python. Это очень полезно, когда вы используете чей-то компьютер, и вам нужно узнать, где установлен Python. В некоторых системах, данная команда не сработает, и выдаст пустую строку с надписью None. Посмотрим, как пользоваться этой функцией:
sys.exit
Данная функция позволяет разработчику выйти из Python. Функция exit принимает необязательный аргумент, обычно целое число, которое дает статус выхода. Ноль считается как успешное завершение. Обязательно проверьте, имеет ли ваша операционная система какие-либо особые значения для своих статусов выхода, чтобы вы могли следить за ними в своем собственном приложении. Обратите внимание на то, что когда вы вызываете exit, это вызовет исключение SystemExit, которое позволяет функциям очистки работать в конечных пунктах блоков try / except. Давайте взглянем на то, как вызывается данная функция:
Запустив данный код в IDLE, вы увидите возникшую ошибку SystemExit. Давайте создадим несколько скриптов для теста. Для начала вам нужно создать основной скрипт, программу, которая будет вызывать другой скрипт Python. Давайте назовем его “call_exit.py”. Скрипт должен содержать следующее:
Теперь создайте скрипт Python под названием“exit.py” и сохраните его в той же папке. Вставьте в него следующий код:
Теперь давайте запустим его:

sys.exit
Как вы могли заметить, написанный нами скрипт exit вернул ноль, так что он успешно заработал. Получается, мы заодно научились вызывать разные скрипты Python изнутри самого Python!
Есть вопросы по Python?
На нашем форуме вы можете задать любой вопрос и получить ответ от всего нашего сообщества!
Telegram Чат & Канал
Вступите в наш дружный чат по Python и начните общение с единомышленниками! Станьте частью большого сообщества!
Паблик VK
Одно из самых больших сообществ по Python в социальной сети ВК. Видео уроки и книги для вас!
sys.path
Значение функции path модуля sys – это список строк, которые указывают путь поиска для модулей. Как правило, данная функция указывает Python, в каких локациях смотреть, когда он пытается импортировать модуль. В соответствии с документацией Python, sys.path инициализируется из переменной окружения PYTHONPATH, плюс зависимое от установки значение, указанное по умолчанию. Давайте взглянем на пример:
Данная функция может быть весьма полезной во время отладки причины, по которой модуль не импортируется. Вы также можете изменить путь. Так как данная функция является путем, мы можем добавлять или удалять путь из неё. Давайте взглянем на то, как добавлять путь:
Удаление пути я оставлю как задание для читателя 
sys.platform
Значение sys.platform – идентификатор платформы. Вы можете использовать sys.platform чтобы добавлять модули к sys.path, импортировать разные модули, в зависимости от платформы, или запускать разные части кода. Давайте взглянем:
В данном примере мы видим, что Python работает в Windows. Вот пример того, как мы можем воспользоваться данной информацией:
Данный код показывает способы проверки того, используем ли мы определенную операционную систему. Если мы используем Windows, мы получим определенную информацию из реестра Windows, при помощи модуля Python под названием _winreg. Если мы используем Linux, мы можем выполнить команду ls, чтобы получить информацию о каталоге, в котором мы находимся.
sys.stdin / stdout / stderr
Stdin, stdout и stderr сопоставляются с файловыми объектами, которые соответствуют стандартным входам, выходам и потокам ошибок интерпретатора соответственно. Функция stdin используется для всех входов, используемых интерпретатором, за исключением скриптов, тогда как stdout используется для выходов операторов print и expression. Главная причина, по которой я акцентирую на этом внимание, заключается в том, что в какой-то момент вам нужно будет перенаправить stdout или stderr, или обе функции к файлу, такому как log, либо же какой-либо дисплей в пользовательском графическом интерфейсе, созданным вами. Вы также можете перенаправить stdin, но с такими случаями я практически не сталкивался.
Подведем итоги
Существует много других значений и методов в модуле sys. Обратитесь к документации Python, а именно к секции 27.1, если вам нужно углубиться в данный вопрос. Мы многому научились из данной статьи, поздравляю. Теперь вы знаете, как выйти из программы Python, как получить информацию о платформе, работать с аргументами, переданными командной строке, и многому другому.

Являюсь администратором нескольких порталов по обучению языков программирования Python, Golang и Kotlin. В составе небольшой команды единомышленников, мы занимаемся популяризацией языков программирования на русскоязычную аудиторию. Большая часть статей была адаптирована нами на русский язык и распространяется бесплатно.
Установка Python в ОС Windows
Операционная система Windows позволяет установить сразу несколько версий интерпретатора Python . Будем считать, что нам необходимо установить последнюю из доступных на официальном сайте.
Для загрузки установочного файла последней версии Python необходимо перейти на страницу загрузок официального сайта и нажать желтую кнопку «Download Python 3.*.*» (см. рис. №1 ).

Рис. №1. Официальная страница загрузок сайта python.org.
Далее необходимо запустить загруженный установочный файл python-*.exe , который запустит окно установщика (см. рис. №2 ).

Рис. №2. Окно установщика python.
Чтобы без проблем пользоваться утилитой py launcher , которая будет запускать данную версию интерпретатора по умолчанию командой «py» , ставим галочку напротив «Use admin privileges when installing py.exe» . Если данная версия интерпретатора Python устанавливается в систему в качестве основной, то для того, чтобы в командной строке можно было обращаться к нему посредством простой команды «python» (вместо указания полного пути к интерпретатору), добавляем Python в переменную окружения PATH , поставив галочку напротив «Add Python.exe to PATH» (см. рис. №3 ).

Рис. №3. Активация пунктов для py.exe и PATH.
Если по какой-то причине при использовании команды «python» запускается интерпретатор другой версии, просто переустановите нужную версию еще раз, незабыв добавить ее в переменную окружения PATH , либо измените эту переменную в самой системе так, чтобы путь к нему стал располагаться ближе к началу списка (это для более продвинутых пользователей).
Теперь можно смело кликать по кнопке «Install now» (т.е. «Установить сейчас») и просто ждать завершения установки в предложенную папку с параметрами по умолчанию (см. рис. №4 ). Однако торопиться с выбором данного варианта не стоит, т.к. он подходит больше для обычных пользователей, которые не собираются устанавливать несколько версий интерпретатора.

Рис. №4. Установка с параметрами по умолчанию.
Для более продвинутых пользователей, лучше выбрать вариант «Customize installation» (т.е. «Выборочная установка») для самостоятельного выбора устанавливаемых параметров (см. рис. №5 ).

Рис. №5. Выборочная установка.
- Documentation – установить документацию Python (не помешает);
- pip – установить менеджер пакетов pip для загрузки сторонних пакетов и библиотек, написанных на Python (выбираем обязательно);
- tcl/tk and IDLE – установить средства разработки на Python (не помешает);
- Python test suite – установить библиотеку для тестирования приложений (не помешает);
- py launcher – утилита, которая помогает находить и запускать сценариям (или командной строке) различные версии Python (если опция еще доступна и мы хотим сделать текущую версию интерпретатора запускаемой по умолчанию командой «py» , обязательно выбираем этот пункт; если опция уже недоступна, то ранее мы установили утилиту с другой версией интерпретатора, поэтому нужно выйти из установки и сперва удалить ее из системы);
- for all users – этот пункт позволяет установить утилиту py launcher для всех пользователей, но лучше отключить этот пункт, если компьютер приходится делить с кем-то еще (каждый пользователь должен установить в свое окружение собственные инструменты разработки).
Нажимаем кнопку «Next» (т.е. «Далее») и совершаем переход к окну дополнительных опций (см. рис. №6 ).

Рис. №6. Выборочная установка Python: необязательные опции.
- Install Python 3.* for all users – если за компьютером работает несколько пользователей, лучше отключить этот пункт, т.к. пользователи смогут менять общие настройки и зависимости, что рано или поздно приведет к неразберихе и неполадкам (каждый пользователь должен установить в свое окружение собственную версию и сопутствующие библиотеки);
- Associate files with Python – выбор данной опции позволит Windows связать с Python файлы, имеющие расширение *.py , что сделает возможным запуск скриптов по двойному щелчку мыши (обязательно выбираем);
- Create shortcuts for installed applications – для запуска приложений будут созданы ярлыки (пусть будут);
- Add Python to environment variables – путь к интерпретатору Python будет добавлен в переменную окружения PATH (обязательно выбираем);
- Precomple standard library – провести прекомпиляцию стандартной библиотеки (включаем, не помешает, хотя процесс установки и будет идти чуть дольше);
- Download debugging simbols и Download debug binaries – эти два пункта связаны с загрузкой компонентов для отладки, их установка нам может не понадобиться, но и не помешает.
После того, как все необходимые опции будут выбраны, указываем путь до папки Python . При этом, если вы работаете за компьютером один, лучше указать более простой путь, например, c:\python\python311 . Если же за компьютером работает несколько пользователей, то устанавливать Python желательно в папку пользователя, предлагаемую системой (у каждого пользователя должна быть своя папка для установки интерпретаторов Python ).
Завершив с выбором опций, можно переходить непосредственно к установке, нажав кнопку «Install» , т.е. «Установить» (см. рис. №7 ).

Рис. №7. Выборочная установка Python: дополнительные опции.
Если все было сделано правильно, то после успешной установки должно появиться окно успешного завершения установки «Setup was successful» (см. рис. №8 ).

Рис. №8. Окно успешного завершения установки.
Закрываем финальное окно установщика Python и приступаем к проверке установки.
Перед загрузкой интерпретатора более ранней версии внимательно ознакомьтесь с информацией на странице загрузки. Убедитесь, что скачиваемая версия интерпретатора подходит для версии вашей операционной системы. Например, интерпретатор версии 3.9.2 не будет корректно работать под управлением ОС Windows 7 и более ранними версиями этой операционной системы. О чем жирным шрифтом предупреждается на странице загрузки.
Запуск интерпретатора и файлов Python
Для начала давайте откроем командную строку ОС Windows , использовав комбинацию клавиш Win+R , и введем в нее команду «cmd» . Результатом выполнения данной команды должно стать появление окна системной консоли (см. рис. №9 ).

Рис. №9. Запуск интерпретатора Python в консоли ОС Windows.
В открывшемся окне консоли введем команду «python» , которая должна запустить интерпретатор. Тот же эффект может быть получен и при использовании команды «py» , которой мы должны быть благодарны установленной утилите Python Launcher (см. рис. №9 ). Данная команда по умолчанию запускает тот интерпретатор Python , вместе с которым она была установлена в систему. Если же требуется запустить интерпретатор определенной версии, следует использовать команду «py -*.*» , указав версию после дефиса. В нашем примере для запуска установленной одиннадцатой версии интерпретатора мы использовали команду «py -3.11» . Список всех установленных в системе версий Python можно получить, выполнив команду «py —list» или аналогичную ей «py -0» . Версия по умолчанию будет выделена в списке звездочкой. В нашем случае, например, мы получили список всего лишь с одной строчкой «-V:3.11 * Python 3.11 (64-bit)» , т.к. других интерпретаторов пока что установлено не было. С другими командами утилиты можно познакомиться в справке, выполнив команду «py —help» .
Стоит добавить, что запустить интерпретатор можно и с помощью указания полного пути к нему. Именно поэтому, если вы работаете за компьютером один, его удобно устанавливать в папку, например, «c:\python\python311» . Тогда запускать его можно будет командой «c:\python\python311\python.exe» (в нашем случае пришлось ввести более длинный путь).
Что касается запуска скриптов Python , то для этого нужно после перечисленных выше команд для запуска интерпретатора указать через пробел либо полный путь к скрипту, либо имя скрипта, если мы находимся в папке с ним (см. рис. №10 ).

Рис. №10. Запуск файлов Python в консоли ОС Windows.
В примере выше мы запускали файл main.py , содержащий всего одну инструкцию «print(‘Привет, Мир!’)» . Его мы создали в каталоге d:\python . Однако запускать его можно не только через консоль, но и обычным для ОС Windows способом, т.е. двойным кликом мыши по ярлыку файла. Здесь главное помнить, что сохранять python -файлы необходимо либо с расширением .py , чтобы система могла определить связанное с файлом приложение, либо с расширением .pyw , которое часто используется в приложениях с графическим интерфейсом для скрытия окна консоли.
Стоит заметить, что в комплекте с интерпретатором поставляется собственная IDE , которую в Windows можно легко найти в меню «Пуск» под именем IDLE (после имени в скобках дополнительно указывается версия Python ). В ней удобно запускать и тестировать короткие фрагменты исходного кода, т.к. в отличие от интерпретатора в консоли, здесь присутствует ряд дополнительных плюсов, например, графическая оболочка и подсветка синтаксиса (см. рис. №11 ).

Рис. №11. Использование встроенной IDE Python.
Перечисленные нами способы запуска скриптов Python , конечно же не единственные. Но большая часть других способов предназначена для более узкоспециализированных задач, поэтому здесь мы их рассматривать не будем.
Вопросы и задания для самоконтроля
1. С какого ресурса следует загружать установочный файл дистрибутива Python ? Почему? Показать решение.
Ответ. Для загрузки установочного файла дистрибутива Python необходимо использовать страницу загрузок официального сайта https://www.python.org . Загрузка из других источников может быть причиной сбоев и появления в системе вирусов.
2. Зачем добавлять путь к интерпретатору Python в переменную окружения PATH ? Показать решение.
Ответ. Это позволит запускать интерпретатор с помощью простой команды «python» , без необходимости указывать полный путь до него.
3. Для чего нужен менеджер пакетов pip ? Показать решение.
Ответ. Менеджер пакетов pip используется для загрузки сторонних пакетов и библиотек, написанных на Python .
4. Для чего стоит установить утилиту Python Launcher ? Показать решение.
Ответ. Данная утилита поможет сценариям (или командной строке) находить и запускать различные версии Python . Кроме того, станет доступна более короткая команда «py» для запуска интерпретатора, с которым она была установлена. Любую другую версию интерпретатора, установленного в системе, можно будет запускать с помощью команды формата «py —*.*» , указав после дефисов вместо звездочек желаемую версию Python .