Как запустить скрипт python в linux

Обновлено: 06.07.2024

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

  • Командную строку (терминал).
  • Интерактивный режим Python.
  • Текстовый редактор или полноценную IDE.
  • Менеджер файлов операционной системы (запуск через графический интерфейс).

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

Не нужно путать скрипты и модули, хотя различия между ними не велики. Скрипты — это файлы с исполняемым кодом, а модули — файлы, код которых импортируется в скрипты, проще говоря, библиотеки.

Интерпретатор и его установка

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

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

Установить интерпретатор на Windows не сложно, достаточно найти Python в Microsoft Store и установить.

Если же у вас старая версия Windows и предыдущий вариант не работает, то надо зайти на официальный сайт Python, скачать и запустить установочный файл и следовать инструкциям по установке. Не забудьте при установке выставить галку, чтобы Python был добавлен в Windows PATH.

В Linux обычно ничего устанавливать не требуется, так как Pyton включают в его дистрибутив.

Интерактивный запуск кода Python

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

Чтобы войти в интерактивный режим в Windows, можно использовать один из нескольких способов:

Для выхода из интерактивного режима используются комбинации клавиш: <Ctrl>+<Z> и после этого нажмите <Enter>. Или можно просто прописать в командной строке quit() или exit().

Работать в интерактивном режиме в IDLE можно не только в Windows, но и в Linux, однако в этом нет смысла, потому что терминал Linux достаточно удобен и предоставляет все необходимые инструменты, в отличии от командной строки Windows.

Примеры работы в интерактивном сеансе

Интерактивный сеанс является необходимым и важным инструментом. С его помощью программист может быстро проверить код, в работе которого он не уверен.

Код исполняется сразу после ввода, однако это не значит, что в терминале можно использовать только однострочные операции, например:

Обратите внимание, что для вывода результата выражения в терминал в интерактивном сеансе не нужно использовать функцию print().

В командной строке также можно писать функции, циклы, условия. Кроме того, в интерактивном сеансе можно импортировать модули.

Командная строка автоматически определяет, когда нужно написать многострочную инструкцию, например, если программист хочет объявить функцию, он пишет:

Следующая команда вызывает только что созданную функцию:

Индикаторы ввода остались на этой же строке, потому что мы установили разделитесь функции print с помощью аргумента end = " " .

Запуск скрипта Python через командную строку

Интерактивный сеанс позволяет тестировать код, но как только он завершится, весь код потеряется.

Запишем его в файл world.py. Запустить его через командную строку можно несколькими способами.

В последних версиях Windows можно запустить скрипт Python просто введя его имя:

Такой запуск возможен благодаря тому, что Windows автоматически определяет, какую программу (в данном случае интерпретатор Python) использовать для запуска файла.

В Linux также можно воспользоваться этим способом, но в начале скрипта Python в первой строке должен быть указан полный путь к интерпретатору:

После этого нужно разрешить запуск файла (сделать его исполняемым).

Запуск модуля

Иногда возникает необходимость запустить модуль, как скрипт. Однако при использовании обычного способа командная строка выдает предупреждение о том, что файл нельзя открыть.

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

Перенаправление вывода

Теперь запустим. Полная команда выглядит так:

Здесь output.txt – это текстовый файл, в который записывается результат выполнения скрипта.

Операция может использоваться как в операционной системе Windows, так и в Unix-подобных системах. Если файла, в который должен вывестись результат, не существует, система создаст его автоматически.

Например, у нас уже есть файл output.txt со строкой приветствия (после того как мы его создали предыдущей командой). Теперь допишем в него ещё одну строку:

Таким образом можно последовательно запустить несколько раз этот скрипт и в файл будут дописываться всё новые строки приветствия.

Использование IDLE

IDLE – это официальная интегрированная среда разработки, поставляемая вместе с интерпретатором Python.

Она позволяет работать в интерактивном режиме, писать и запускать скрипты. Кроме того, IDLE поддерживает подсветку синтаксиса и отладку.

Работа в интерактивном режиме не отличается от того, что было описано для командной строки Windows и терминала Linux. Программист пишет код, который сразу исполняется интерпретатором.

Запуск скрипта


Запуск скрипта из интерактивного режима

Иногда при работе в интерактивном режиме возникает необходимость проверить код какого-либо скрипта. Не обязательно использовать терминал или отдельно открывать скрипт в IDLE, его можно запустить прямо из интерактивного сеанса различными способами.

import

При импорте модуля в скрипт выполняется весь содержащийся в нём код. Если модуль содержит только объявления функций и классов и присвоение значений, программист ничего не увидит. Но если модуль выводит что-то на экран, работает с файлами, то это отобразится при импорте.

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


Здесь импортировал библиотеку sys для того чтобы в пути прописать полный путь до моего модуля. Видно, что приветствие отображается только после первой попытки импорта моего модуля.

Оператор exec() сначала читает содержимое модуля, затем отправляет его в функцию, которая выполняет код.

Синтаксис выглядит так:

Запуск скриптов из текстового редактора или IDE

Если программист работает над крупным проектом, ему не достаточно стандартной IDLE и блокнота. В этом случае используется либо текстовый редактор, либо полноценная среда разработки IDE.

Для большинства текстовых редакторов разработаны плагины, позволяющие запускать скрипты Python одним кликом мыши. Сейчас очень популярен текстовый редактор VS Code. Вот здесь можно описано как с ним работать.

Запуск скриптов через менеджер файлов

Этот способ можно использовать не только в Windows, но и Unix-подобных системах. Однако после запуска окно консоли будет сразу закрываться. Чтобы решить эту проблему, в конце скрипта добавляется оператор input(), таким образом консоль не закроется, пока не получит ввод от пользователя.

Ещё одной проблемой является невозможность обнаружения и отладки ошибок. Даже если программист добавил оператор input(), при возникновении ошибки в процессе выполнения скрипта консоль закроется.

Это самый ненадёжный способ, который накладывает на программиста много ограничений. Лучше отказаться от идеи пользоваться файловым менеджером во время отладки скриптов и вернуться к стандартным способам запуска через командную строку.

Код, написанный на языке Python, может храниться в редакторе кода, IDE или файле. И он не будет работать, если не знать, как его правильно запускать.

В этом материале рассмотрим 7 способов запуска кода, написанного на Python. Они будут работать вне зависимости от операционной системы, среды Python или местоположения кода.

Где запускать Python-скрипты и как?

Python-код можно запустить одним из следующих способов:

  1. С помощью командной строки операционной системы (shell или терминал);
  2. С помощью конкретной версии Python или Anaconda;
  3. Использовать Crontab;
  4. Запустить код с помощью другого Python-скрипта;
  5. С помощью файлового менеджера;
  6. Использовать интерактивный режим Python;
  7. Использовать IDE или редактор кода.

Запуск Python-кода интерактивно

Для запуска интерактивной сессии нужно просто открыть терминал или командную строку и ввести python (или python3 в зависимости от версии). После нажатия Enter запустится интерактивный режим.

Вот как запустить интерактивный режим в разных ОС.

Интерактивный режим в Linux

Откройте терминал. Он должен выглядеть приблизительно вот так :

терминал Linux запуск python

После нажатия Enter будет запущен интерактивный режим Python.

Интерактивный режим в macOS

На устройствах с macOS все работает похожим образом. Изображение ниже демонстрирует интерактивный режим в этой ОС.

терминал MacOs запуск python

Интерактивный режим в Windows

В Windows нужно открыть командную строку и ввести python . После нажатия Enter появится приблизительно следующее:

терминал Windows запуск python

Запуск Python-скриптов в интерактивном режиме

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

Запуск Python-скриптов в интерактивном режиме

Этот код должен выводить целые числа от 0 до 5. В данном случае вывод — все, что появилось после print(i) .

Для выхода из интерактивного режима нужно написать следующее:

И нажать Enter. Вы вернетесь в терминал, из которого и начинали.

Есть и другие способы остановки работы с интерактивным режимом Python. В Linux нужно нажать Ctrl + D, а в Windows — Ctrl + Z + Enter.

Стоит отметить, что при использовании этого режима Python-скрипты не сохраняются в локальный файл.

Как выполняются Python-скрипты?

Отличный способ представить, что происходит при выполнении Python-скрипта, — использовать диаграмму ниже. Этот блок представляет собой скрипт (или функцию) Python, а каждый внутренний блок — строка кода.

При запуске скрипта интерпретатор Python проходит сверху вниз, выполняя каждую из них. Именно таким образом происходит выполнение кода.

Но и это еще не все.

Блок-схема выполнения кода интерпретатором

  • Шаг 1: скрипт или .py-файл компилируется, и из него генерируются бинарные данные. Готовый файл имеет расширение .pyc или .pyo.
  • Шаг 2: генерируется бинарный файл. Он читается интерпретатором для выполнения инструкций.

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

Иногда полезно изучать байткод. Если вы планируете стать опытным Python-программистом, то важно уметь понимать его для написания качественного кода.

Это также пригодится для принятия решений в процессе. Можно обратить внимание на отдельные факторы и понять, почему определенные функции/структуры данных работают быстрее остальных.

Как запускать Python-скрипты?

Для запуска Python-скрипта с помощью командной строки сначала нужно сохранить код в локальный файл.

Возьмем в качестве примера файл, который был сохранен как python_script.py. Сохранить его можно вот так:

Сохранить скрипт в текстовом редакторе достаточно легко. Процесс ничем не отличается от сохранения простого текстового файла.

Но если использовать командную строку, то здесь нужны дополнительные шаги. Во-первых, в самом терминале нужно перейти в директорию, где должен быть сохранен файл. Оказавшись в нужной папке, следует выполнить следующую команду (на linux):

После нажатия Enter откроется интерфейс командной строки, который выглядит приблизительно следующим образом:

интерфейс командной строки

Теперь можно писать код и с легкостью сохранять его прямо в командной строке.


Основы

Введение в тему

В этом уроке мы ответим на вопрос: как запустить программу на Python? Чтобы ощутить всю мощь языка Пайтон необходимо уметь запускать код, написанный на нём. Программы на Python 3 запускаются независимо от операционной системы, версии языка и местоположения кода. Программа может храниться в файле, среде разработки или редакторе кода.

Где запускать Python скрипты и как

Запустить программу на Python можно несколькими способами:
1. С помощью консоли (командной строки);
2. Использовать конкретную версию Пайтон или Анаконда;
3. Использовать Crontab;
4. Запустить одну программу Пайтон с помощью другого;
5. Использовать файловый менеджер;
6. Используя интерактивный режим Пайтон;
7. Применить редактор кода или IDE.

Запуск Python кода интерактивно

Если открыть консоль и набрать «python3» + «Enter», то запустится Python shell – интерактивный режим исполнения кода Python. Это означает, что в этом режиме Вы можете построчно вводить код и он, так же построчно, будет выполняться. Чаще всего этот режим используют для отладки каких-то небольших частей программы, а также для запуска скриптов, к примеру, управляющих сервером.

Интерактивный режим в Linux

Для запуска кода в интерактивном режиме в Linux достаточно открыть терминал, ввести

$ python и нажать Enter. Готово!

Интерактивный режим в macOS

В macOS всё устроено так же: вводим /$ python и Enter. Интерактивный режим запущен.

Интерактивный режим в Windows

В операционной системе Windows необходимо войти в командную строку и ввести python. После нажатия Enter консоль будет выглядеть следующим образом:

Запуск python скриптов в интерактивном режиме

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

Символ «>>>» является «приглашением», то есть язык при помощи этого символа приглашает Вас что-то ввести.
Строчки без этого символа в начале – это «вывод». Вывод – это то, что выводит сам язык, его ответ на код, введённый программистом.
Для выхода из интерактивного режима нужно ввести:


И нажать Enter. Так Вы выйдете из интерактивного режима и вернетесь в терминал, из которого начинали.
Есть и прочие способы выхода из интерактивного режима Python. В Linux нужно нажать Ctrl + D, а в Windows — Ctrl + Z + Enter.
Так же, вместо «exit()», можно ввести:

Результат будет тем же. Эта команда идентична exit() и введена в язык исключительно для удобства программистов.
Обратите внимание что при использовании этого режима Питон-скрипты не сохраняются в файл.

Как выполняются python скрипты

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


При выполнении программы Питон читает каждую строку сверху вниз и сразу выполняет её. Если встречается команда «print()», интерпретатор выводит то, что заключено в скобки этой команды. Если встречается команда «input()», Питон будет ожидать ввод с клавиатуры и, после нажатия Enter, перейдёт к выполнению следующей строки.

Блок схема выполнения кода интерпретатором

Общая схема выполнения программы выглядит так:
1. Программа или файл с расширением .py компилируется, и из него генерируются байт-коды. Итоговый код имеет расширение .pyc или .pyo.
Файлы с расширением .pyc автоматически создаются интерпретатором при импортировании кода, что оптимизирует будущие импорты этого модуля. Поэтому такие файлы создаются только из .py файлов, если они импортируются другим файлом или модулем с расширением .py.
Файлы .pyo также создается интерпретатором при импорте модуля, но с указанием интерпретатору включения параметров оптимизации.
Оптимизатор активируется добавлением флага «-O» при вызове интерпретатора Python:
python -O
Файлы .pyo меньше по размеру, благодаря алгоритмам оптимизации, применённым интерпретатором.
Тип файла .pyd, в отличие от предыдущих, применим исключительно для ОС Windows. Эти файлы аналогичны подключаемым библиотекам DLL.

2. Генерируется бинарный файл. Он читается интерпретатором для выполнения инструкций.
Опытные разработчики Python иногда читают байт-коды для лучшего понимания работы программы.

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

Интерпретатор Python

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

Существует несколько интерпретаторов:


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

Запуск возможен двумя способами: как готовая к использованию программная последовательность (скрипт или модуль) или как отдельные куски кода, которые вводятся прямо в окно программы.

Интерактивный запуск кода

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

Для ОС Linux это будет выглядеть следующим образом:

Теперь можно вводить команды, которые будут выполняться сразу после этого. Минус подобного подхода в том, что вся введенная последовательность не сохраняется после закрытия текущей сессии.

Интерактивное исполнение кода необходимо для того, чтобы немедленно протестировать фрагмент написанного кода. Кроме того, его можно использовать в процессе обучения для проверки действий тех или иных операторов «на лету». Этот способ интерпретации команд позволяет попробовать нужные вам функции языка, не прибегая к написанию отдельных скриптов для этого.

Выйти из интерактивного режима можно с помощью команды quit(), или просто закрыв окно терминала в Windows.

Для открытия терминала или командной строки перед запуском самого интерпретатора необходимо:

  • В Windows нажать комбинацию клавиш «Флажок» + «R», после чего ввести команду cmd и нажать на кнопку «ОК» в диалоговом окне.
  • В Linux или других подобных операционных системах доступ к командной строке предоставляется с помощью дополнительной программы. Можно использовать xterm или Konsole.
  • В macOS для получения доступа к терминалу необходимо выбрать меню «Приложения», после чего перейти в раздел «Утилиты» и кликнуть на элементе «Терминал».

Как работает интерпретатор Python для скриптов

Запуск на исполнение написанных скриптов или модулей производится в пакетном режиме. И выполняется по сложной схеме, которая состоит из следующих этапов:

  1. Последовательная обработка всех операторов, которые записаны в скрипте.
  2. Компиляция исходного хода в промежуточный формат. Интерпретатор создает байт-код, который представляет собой язык программирования низкого уровня, независимый от платформы и операционной системы. Байт-код необходим для оптимизации процесса выполнения скрипта.
  3. Исполнение полученного кода. На этом этапе вступает в действие виртуальная машина Python (PVM), которая циклично перебирает каждый оператор из скрипта и запускает его на исполнение. Как будто вы вводите каждую команду последовательно в интерактивном интерпретаторе.

Запуск скриптов в командной строке

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

Создавать текстовый файл можно с помощью любого редактора, в том числе Notepad. Однако лучше использовать более продвинутые решения, например Sublime Text. Для примера возьмем наиболее простой скрипт, с которого начинается знакомство с любым языком программирования.

Файл можно сохранить в вашем рабочем каталоге с любым именем и расширением .py.

Чтобы запустить скрипт на исполнение, нужно использовать интерпретатор языка программирования и в качестве дополнительного параметра указать имя созданного вами файла.

В приведенном выше примере файл был назван «hello.py». После ввода команды нужно нажать клавишу «Ввод», и на экране появится результат работы скрипта. То есть надпись «Привет, Мир» или классическое английское «Hello World»!

Если файл с программой сохранен не в каталоге с интерпретатором, нужно указывать путь к нему.

Переназначение устройства вывода информации

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

По результатам работы скрипта создается файл с именем output.txt, в который сохраняется все то, что должно было появиться на экране во время работы в программе. Это стандартный синтаксис, предусмотренный операционной системой.

Если файла с заданным именем не существует, ОС создает его автоматически. Если существует – данные в нем перезаписываются без сохранения предыдущих. В случае, когда есть необходимость в добавлении данных в конец текстового файла, вместо одного значка > необходимо указать два >>.

Прокачать навык программирования на Python и найти работу Junior Python разработчика помогут наши менторы Выбрать ментора

Запуск из командной строки без интерпретатора

В последних версиях операционной системы Windows добавлена возможность запускать скрипты на Python без ввода в командной строке названия программы-интерпретатора. То есть необходимо просто написать название файла с расширением.

Обусловлено это тем, что при клике на файле или запуске его из командной строки операционная система автоматически ищет связанное приложение и запускает его. Точно так же вы открываете файлы Word, просто кликнув на них курсором мыши.

Запуск скриптов из интерактивного режима

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

Запустить скрипт из интерактивного режима можно командой:

Обратите внимание, что эта команда срабатывает один раз за интерактивный сеанс. Поэтому, если внести изменения в файл со скриптом и перезапустить его этой командой, ничего не произойдет.

Заключение

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


Мы рассказываем, как стать более лучшим разработчиком, как поддерживать и эффективно применять свои навыки. Информация о вакансиях и акциях эксклюзивно для более чем 8000 подписчиков. Присоединяйся!

Читайте также: