Ответ
При запуске команды python
в терминале происходит следующее:
- Поиск исполняемого файла: Операционная система ищет исполняемый файл
python
(илиpython3
,py
) в директориях, указанных в переменной окруженияPATH
. - Загрузка интерпретатора: Найденный исполняемый файл загружается в память. Интерпретатор Python инициализирует свою среду выполнения, включая загрузку стандартных модулей и настройку
sys.path
(пути поиска модулей). - Определение режима работы: Интерпретатор анализирует аргументы, переданные команде
python
, чтобы определить режим работы:- Интерактивный режим (REPL): Если команда
python
вызвана без аргументов (например,python
), запускается интерактивная оболочка (Read-Eval-Print Loop).- Выводится приветствие с версией Python.
- Ожидается ввод пользователя (
>>>
). - Введенный код читается, вычисляется (компилируется в байт-код и выполняется виртуальной машиной Python), выводится результат.
- Цикл повторяется до завершения работы (Ctrl+D или
exit()
).>>> 2 + 2 4 >>> print("Hello, Python!") Hello, Python!
- Выполнение файла: Если указан путь к файлу (например,
python script.py
), интерпретатор читает и выполняет код из этого файла.- Код файла компилируется в байт-код.
- Байт-код выполняется виртуальной машиной Python.
- После завершения выполнения файла интерпретатор завершает работу.
- Выполнение строки кода: С аргументом
-c
(например,python -c "print('Hello')"
) интерпретатор выполняет переданную строку кода.python -c "import os; print(os.getcwd())"
- Интерактивный режим (REPL): Если команда
- Освобождение ресурсов: При завершении работы (будь то выход из REPL, окончание выполнения файла или строки) интерпретатор освобождает занятые системные ресурсы и завершает процесс.