Модель выполнения Python включает два основных этапа: компиляцию и интерпретацию. Самая распространённая реализация, CPython, обрабатывает оба.
Когда ты запускаешь Python-скрипт, исходный код (файл .py) сначала компилируется в байт-код — низкоуровневое, независимое от платформы представление. Этот байт-код кэшируется в файлах .pyc внутри директории __pycache__, что позволяет Python пропустить перекомпиляцию, если исходный код не изменился.
source.py → (compiler) → source.pyc (bytecode)
Скомпилированный байт-код затем выполняется виртуальной машиной Python (PVM), которая последовательно читает и интерпретирует каждую инструкцию. PVM не выполняет исходный код в сыром виде — она работает с оптимизированным байт-кодом, полученным на предыдущем этапе.
source.pyc (bytecode) → (PVM) → program execution
Не все реализации Python следуют этой точной модели:
.pyc — это оптимизация, а не требование — Python автоматически пересоздаёт их при необходимостиИсходный код Python компилируется непосредственно в машинный код, который затем выполняется операционной системой без промежуточного этапа интерпретации.
Новый — ещё не проверен сообществом
Вы