2013-12-22 2 views
0

Я написал сценарий, скажем, samplescript.py. Все, что я могу вспомнить, с помощью, кроме редактирования, запускает его через интерпретатор python из командной строки.Содержит ли интерпретатор скрипты python?

Позже я нашел файл samplescript.pyc. Выполняет ли скрипт через интерпретатор всегда вызывать компиляцию скрипта?

+0

Да. Он компилирует его. Как еще он должен знать, что делать? –

+0

В следующий раз, когда вы запустите скрипт, ваш компьютер может использовать файл '.pyc' вместо повторной компиляции. При изменении файла '.py' создается новый файл' .pyc'. – ChrisP

+0

http://stackoverflow.com/questions/2998215/if-python-is-interpreted-what-are-pyc-files –

ответ

3

Когда вы выполняете свой код, python создает скомпилированный файл pyc. Этот файл является один выполнен в заднем работает, если вы не измените код

От here:

В качестве важного ускорения времени запуска для коротких программ, которые использовать много стандартные файлы, если файл с именем «spam.pyc» существует в каталоге, в котором находится «spam.py», предполагается, что он содержит версию спама модуля, которая уже была `` скомпилирована '`скомпилированной'. Модификация Время версии «spam.py», используемое для создания «spam.pyc», записывается в «spam.pyc», и файл игнорируется, если они не совпадают.

Как правило, вам не нужно ничего делать, чтобы создать файл «spam.pyc». Всякий раз, когда «spam.py» успешно скомпилирован, делается попытка записать скомпилированную версию в «spam.pyc». Это не ошибка, если попытка не удалась; если по какой-либо причине файл не написан полностью, , полученный файл «spam.pyc» будет признан недействительным и, следовательно, проигнорирован позже. Содержимое файла «spam.pyc» является платформой независимо, поэтому каталог модулей Python может совместно использоваться машинами различных архитектур.

Смежные вопросы