Spec-Zone.ru › Python 3.11

Использование интерпретатора Python

2.1. Вызов интерпретатора

Интерпретатор Python обычно устанавливается как /usr/local/bin/python3.11 на машинах, где он доступен; размещение /usr/local/bin в пути поиска вашей оболочки Unix позволяет запустить его, набрав команду:

python3.11

в оболочке. 1 Поскольку выбор каталога, где находится интерпретатор, является опцией установки, возможны и другие места; уточните у вашего местного эксперта по Python или системного администратора. (Например, /usr/local/python — популярное альтернативное расположение.)

На Windows-машинах, где вы установили Python из Магазина Microsoft, будет доступна команда python3.11. Если у вас установлен запускающий модуль 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.11
Python 3.11 (default, April 4 2021, 09:25:04)
[GCC 10.2.0] 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 -*-

Одно исключение из правила первой строки — когда исходный код начинается с строки UNIX «shebang». В этом случае объявление кодировки следует добавить как вторую строку файла. Например:

#!/usr/bin/env python3
# -*- coding: cp1252 -*-

Примечания

1

В Unix интерпретатор Python 3.x по умолчанию не устанавливается с исполняемым файлом, названным python, чтобы избежать конфликта с одновременно установленным исполняемым файлом Python 2.x.

© 2001–2023 Python Software Foundation
Licensed under the PSF License.
https://docs.python.org/3.11/tutorial/interpreter.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API