Использование интерпретатора Python
2.1. Вызов интерпретатора
Интерпретатор Python обычно устанавливается как /usr/local/bin/python3.8 на машинах, где он доступен; размещение /usr/local/bin в пути поиска вашей оболочки Unix позволяет запустить его, набрав команду:
python3.8
в оболочке. 1 Поскольку выбор каталога, где находится интерпретатор, является опцией установки, возможны и другие места; уточните у своего местного специалиста по Python или системного администратора. (Например, /usr/local/python — популярная альтернативная директория.)
На компьютерах с Windows, где вы установили Python из Магазина Microsoft, команда 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] ..., который выполняет выражение(я) в команде, аналогично опции оболочки -c. Поскольку операторы Python часто содержат пробелы или другие символы, являющиеся специальными для оболочки, обычно рекомендуется заключать команду в одинарные кавычки целиком.
Некоторые модули Python также полезны как скрипты. Их можно вызвать с помощью python -m module [arg] ..., который выполняет исходный файл для модуля так, как будто вы ввели его полное имя в командной строке.
Когда используется файл скрипта, иногда полезно выполнить скрипт и затем перейти в интерактивный режим. Это можно сделать, передав -i перед скриптом.
Все параметры командной строки описаны в Командная строка и среда.
2.1.1. Передача аргументов
Если известны интерпретатору, имя скрипта и дополнительные аргументы после него преобразуются в список строк и присваиваются переменной argv в модуле sys. Вы можете получить доступ к этому списку, выполнив import
sys. Длина списка не меньше одного; если скрипт и аргументы не указаны, sys.argv[0] — пустая строка. Если имя скрипта задано как '-' (то есть стандартный ввод), sys.argv[0] устанавливается в значение '-'. При использовании -c команды, sys.argv[0] устанавливается в значение '-c'. При использовании -m модуля, sys.argv[0] устанавливается в полное имя найденного модуля. Параметры, найденные после -c команды или -m модуля, не обрабатываются механизмом обработки опций интерпретатора 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. В этом кодировании можно одновременно использовать символы большинства языков мира в строковых литералах, идентификаторах и комментариях, хотя стандартная библиотека использует только символы ASCII для идентификаторов — соглашение, которого следует придерживаться в любом переносимом коде. Чтобы правильно отобразить все эти символы, ваш редактор должен распознать, что файл имеет кодировку UTF-8, и он должен использовать шрифт, поддерживающий все символы в файле.
Чтобы объявить кодировку, отличную от кодировки по умолчанию, нужно добавить специальную строку комментария в качестве первой строки файла. Синтаксис следующий:
# -*- coding: encoding -*-
где кодировка — это одна из допустимых codecs, поддерживаемых Python.
Например, чтобы объявить использование кодировки Windows-1252, первая строка вашего файла исходного кода должна быть следующей:
# -*- coding: cp1252 -*-
Исключение из правила первой строки — это случай, когда исходный код начинается с строки «shebang» в Unix. В этом случае объявление кодировки следует добавить как вторую строку файла. Например:
#!/usr/bin/env python3 # -*- coding: cp1252 -*-
Примечания
-
1 -
В Unix интерпретатор Python 3.x по умолчанию не устанавливается с исполняемым файлом, названным
python, чтобы не возникло конфликта с одновременно установленным интерпретатором Python 2.x.
© 2001–2022 Python Software Foundation
Licensed under the PSF License.
https://docs.python.org/3.8/tutorial/interpreter.html