Какой бы язык программирования вы не начали изучать, вашей первой программой, скорее всего, будет «Hello World!».
Допустим, вы хотите написать такую программу на Python. Это можно сделать двумя способами: писать сразу в оболочке Python либо написать скрипт в редакторе кода и затем запускать в терминале.
Что такое оболочка?
Операционная система состоит из множества программ. Они выполняют различные задачи: управление файлами, памятью, ресурсами. Также они обеспечивают беспроблемный запуск ваших приложений.
Что бы мы ни делали на компьютере — от анализа данных в Excel до игр — все облегчается операционной системой.
Программы операционной системы делятся на два вида: программы оболочки и ядра.
Программы ядра выполняют такие задачи, как создание файла или отправка прерываний. Задача оболочки — принимать инпут, определять, какую программу ядра требуется запустить для обработки этого инпута, запускать ее и показывать результат.
Оболочка также называется командным процессором.
[python_ad_block]Что такое терминал?
Терминал — это программа, которая взаимодействует с оболочкой и позволяет нам коммуницировать с ней при помощи текстовых команд. Поэтому его также называют командной строкой.
Чтобы открыть терминал в Windows, нажмите клавиши Windows + R
, затем наберите cmd
и нажмите Enter. В Linux терминал открывается сочетанием клавиш Ctrl + Alt + T
.
Что такое оболочка Python?
Python — это интерпретируемый язык программирования. Это значит, что интерпретатор Python читает строку кода, выполняет эту строку, а затем, если на этом шаге нет ошибок, процесс повторяется.
Оболочка Python дает вам интерфейс командной строки. С его помощью можно интерактивно передавать команды непосредственно в интерпретатор Python.
Подробнее об оболочке Python можно почитать в документации.
От редакции Pythonist. Об интерпретаторах Python можно почитать в статье «Топ-7 бесплатных компиляторов и интерпретаторов Python».
Как пользоваться оболочкой Python?
Чтобы запустить оболочку Python, просто введите python
в терминале и нажмите Enter.
C:\Users\Suchandra Datta>python Python 3.8.3 (tags/v3.8.3:6f8c832, May 13 2020, 22:37:02) [MSC v.1924 64 bit (AMD64)] on win32 Type "help", "copyright", "credits" or "license" for more information. >>>print("hello world!")
Интерактивная оболочка еще называется REPL (read-evaluate-print loop — «цикл „чтение — вычисление — вывод“». Она читает команду, оценивает и выполняет ее, выводит результат (если он есть) и повторяет этот процесс, пока вы не выйдете из оболочки.
Выйти из оболочки можно по-разному:
- нажать
Ctrl+Z
в Windows илиCtrl+D
в Unix-подобных системах - выполнить команду
exit()
- выполнить команду
quit()
C:\Users\Suchandra Datta>python Python 3.8.3 (tags/v3.8.3:6f8c832, May 13 2020, 22:37:02) [MSC v.1924 64 bit (AMD64)] on win32 Type "help", "copyright", "credits" or "license" for more information. >>> print("HELLO WORLD") HELLO WORLD >>> quit() C:\Users\Suchandra Datta>
C:\Users\Suchandra Datta>python Python 3.8.3 (tags/v3.8.3:6f8c832, May 13 2020, 22:37:02) [MSC v.1924 64 bit (AMD64)] on win32 Type "help", "copyright", "credits" or "license" for more information. >>> exit() C:\Users\Suchandra Datta>
C:\Users\Suchandra Datta>python Python 3.8.3 (tags/v3.8.3:6f8c832, May 13 2020, 22:37:02) [MSC v.1924 64 bit (AMD64)] on win32 Type "help", "copyright", "credits" or "license" for more information. >>> ^Z C:\Users\Suchandra Datta>
Что можно делать в оболочке Python?
В оболочке можно делать практически все, что вообще позволяет делать язык Python: использовать переменные, циклы, условия для определения функций и т. д.
Символы >>>
— это приглашение оболочки, тут вы можете вводить свои команды. Если ваши команды занимают несколько строк, например, при определении цикла, оболочка выводит троеточие …
, которое сигнализирует о продолжении строки.
Давайте рассмотрим пример:
>>> >>> watch_list = ["stranger_things_s1", "stranger_things_s2", "stranger_things_s3","stranger_things_s4"] >>> >>>
Здесь мы определили список сериалов прямо в оболочке Python.
Теперь давайте определим функцию. Она будет принимать наш список сериалов и возвращать один из них случайным образом.
>>> def weekend_party(show_list): ... r = random.randint(0, len(show_list)-1) ... return show_list[r] ...
Обратите внимание на троеточия в начале строк.
Наконец, чтобы запустить функцию в оболочке, мы просто вызываем ее так же, как делали бы это в скрипте:
>>> weekend_party(watch_list) 'stranger_things_s1' >>> >>> >>> weekend_party(watch_list) 'stranger_things_s3' >>> >>> >>> weekend_party(watch_list) 'stranger_things_s2' >>> >>> >>> weekend_party(watch_list) 'stranger_things_s2' >>> >>> >>> weekend_party(watch_list) 'stranger_things_s3' >>>
В оболочке можно просматривать модули Python:
>>> >>> >>> import numpy >>> numpy.__version__ '1.20.1' >>>
Посмотреть, какие методы и атрибуты предлагает модуль, можно при помощи метода dir()
:
>>> >>> x = dir(numpy) >>> len(x) 606 >>> x[0:3] ['ALLOW_THREADS', 'AxisError', 'BUFSIZE']
Мы видим, что всего Numpy имеет 606 методов и свойств.
Как запустить скрипт Python
В оболочке Python можно выполнять простые программы или заниматься отладкой отдельных частей сложных программ.
Но по-настоящему большие и сложные программы пишутся в редакторе кода. Они сохраняются в отдельных файлах с расширением .py. Их называют скриптами (сценариями) Python. Эти программы можно запускать на выполнение в терминале. Для этого используется команда Python.
Стандартный синтаксис следующий:
python filename.py
Все команды, которые мы выполняли в оболочке, можно записать в скрипт и запустить в терминале.
Заключение
Итак, вы познакомились с понятиями оболочки и терминала, а также научились пользоваться оболочкой Python. Мы также разобрали, как запустить скрипт Python в командной строке.
Перевод статьи «Run Python Script – How to Execute Python Shell Commands in the Terminal».