2. Использование интерпретатора Python¶
2.1. Запуск интерпретатора¶
Интерпретатор Python после установки располагается, обычно, по пути /usr/local/bin/python3.8
— на
тех компьютерах, где этот путь доступен. Добавление каталога /usr/local/bin
к пути поиска
Unix-шелла позволит запустить интерпретатор набором команды
python3.8
прямо из шелла. [1] Поскольку выбор каталога, в котором будет обитать интерпретатор, осуществляется
при его установке, то возможны и другие варианты — посоветуйтесь с вашим Python-гуру или системным
администратором. (Например, путь /usr/local/python
тоже популярен в качестве альтернативного
расположения.)
На компьютерах с Windows, на которых установлен Python из Microsoft Store будет доступна команда: python3.8
. Если у вас установлен
py.exe запускальщик, вы можете использовать py
команду.
Другие способы запуска
в Экскурсе по установке переменных окружения см.
в разделе Python.
При наборе символа конца файла (Control-D в Unix, Control-Z Windows) в ответ
на основное приглашение интерпретатора, последний будет вынужден закончить работу с нулевым
статусом выхода. Если это не сработает — вы можете выйти из интерпретатора путём ввода
следующей команды: quit()
.
Функции редактирования строк интерпретатора включают интерактивное
редактирование, замену истории и завершение кода в системах, поддерживающих
библиотеку GNU Readline. Самый быстрый, наверное, способ
проверить, поддерживается ли расширенное редактирование командной строки, заключается в
нажатии Control-P в ответ на первое полученное приглашение Python. Если вы услышите звуковой сигнал,
значит вам доступно редактирование командной строки; для знакомства см. Приложение
Интерактивное редактирование ввода и подстановка из истории.
Если на ваш взгляд ничего не произошло или отобразился символ
^P
— редактирование командной строки недоступно — удалять символы из текущей
строки возможно будет лишь использованием клавиши Backspace.
Интерпретатор ведёт себя сходно шеллу Unix: если он вызван, когда стандартный ввод привязан к устройству tty — он считывает и выполняет команды в режиме диалога; будучи вызванным с именем файла в качестве параметра или с файлом, назначенным на стандартный ввод — он читает и выполняет сценарий из этого файла.
Другой способ запустить интерпретатор — python -c command [arg] ...
, — при её использовании
поочередно выполняются операторы(-ор) из command (как при использовании опции
-c
Unix-шелла). В связи с тем, что операторы Python часто содержат пробелы или
другие специальные для шелла символы, рекомендуется полностью заключать command в одинарные кавычки.
Некоторые модули Python оказываются полезными при использовании их в качестве сценариев. Они
могут быть запущены в виде команды python -m module [arg] ...
, — таким образом
исполняется исходный файл модуля module (как произошло бы, если бы вы ввели его полное имя
в командной строке).
При использовании файла сценария иногда полезно иметь возможность запустить сценарий и затем
войти в интерактивный режим. Это может быть сделано через указание параметра -i
перед
именем сценария.
Все опции командной строки описаны в Командная строка и окружение.
2.1.1. Передача параметров¶
В случае, если интерпретатору известны имя сценария и дополнительные параметры, с которыми он
вызван, все они передаются сценарию в переменной argv
модуля sys
, представляющей собой
список строк. Вы можете получить доступ к этому списку, выполнив import sys
. Длина списка — минимум,
единица; если не переданы ни имя сценария, ни аргументы — то sys.argv[0]
содержит пустую
строку. Когда в качестве имени сценария передан '-'
(означает стандартный ввод),
sys.argv[0]
устанавливается в '-'
. Если используется директива -c
command, то
sys.argv[0]
устанавливается как '-c'
. Когда используется -m
module, то
sys.argv[0]
устанавливается равным полному имени модуля по расположению. Опции, обнаруженные
после сочетаний -c
command или -m
module не обрабатываются интерпретатором
Python, но остаются в переменной sys.argv
, чтобы обеспечить возможность отслеживания в
самой команде или в модуле.
2.1.2. Интерактивный режим¶
Когда команды считываются из tty, интерпретатор находится в интерактивном режиме.
В этом режиме запрашивается следующая команда с основного приглашения, обычно
три знака больше (>>>
); в то же время, для продолжающих строк выводится вспомогательное приглашение,
по умолчанию три точки (...
). Перед выводом первого приглашения интерпретатор отображает
приветственное сообщение, содержащее номер его версии и пометку о правах копирования:
$ python3.8
Python 3.8 (default, Sep 16 2015, 09:25:04)
[GCC 4.8.2] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>>
Продолжающие строки используются в случаях, когда необходимо ввести многострочную конструкцию.
Взгляните, например, на следующий оператор if
:
>>> the_world_is_flat = True
>>> if the_world_is_flat:
... print("Be careful not to fall off!")
...
Be careful not to fall off!
Подробнее об интерактивном режиме смотрите Интерактивный режим.
2.2. Интерпретатор и его окружение¶
2.2.1. Кодировка исходных файлов¶
По умолчанию, исходники Python считаются созданными в кодировке UTF-8. В этой кодировке в строковых литералах, идентификаторах и комментариях могут быть использованы символы большинства языков мира — хотя стандартная библиотека Python использует только символы ASCII для именования идентификаторов — и этому соглашению должен следовать любой переносимый код. Для корректного отображения всех этих символов, ваш редактор должен опознавать файл как закодированный в UTF-8 и должен использовать шрифт, который содержит все символы, используемые в файле.
Для объявления кодировки, отличной от кодировки по умолчанию, используется специальная строка комментария которую следует добавить в качестве первой строки файла. Синтаксис выглядит следующим образом:
# -- coding: encoding --
Где encoding является одной из допустимых в codecs
, поддерживаемых Python.
Например, если ваш текстовый редактор не поддерживает кодировку файлов UTF-8 и настаивает на какой-либо другой кодировке, скажем, Windows-1252, можно написать:
# -- coding: cp1252 --
Исключение из правила если первая строка в исходном коде начинается с UNIX «shebang» строки. В этом случае объявление кодировки должно быть добавлено в качестве второй строки файла. Например:
#!/usr/bin/env python3
# -*- coding: cp1252 -*-
Сноски
[1] | В операционных системах семейства Unix, интерпретатор Python 3.x по умолчанию не запускается по имени
python , чтобы он не конфликтовал с уже установленным Python 2.x. |