py_compile — Компиляция файлов исходного кода Python
Исходный код: Lib/py_compile.py
Модуль py_compile предоставляет функцию для генерации файла байткода из файла исходного кода и другую функцию, используемую, когда файл исходного кода модуля вызывается как скрипт.
Хотя это не часто требуется, эта функция может быть полезна при установке модулей для совместного использования, особенно если некоторые пользователи не имеют разрешения на запись файлов кеша байткода в директории, содержащей исходный код.
-
exception py_compile.PyCompileError -
Исключение, генерируемое при возникновении ошибки во время попытки компиляции файла.
-
py_compile.compile(file[, cfile[, dfile[, doraise]]]) -
Компилирует файл исходного кода в байткод и записывает файл кеша байткода. Исходный код загружается из файла с именем file. Байткод записывается в cfile, который по умолчанию равен file
+'c'('o'если оптимизация включена в текущем интерпретаторе). Если dfile указан, он используется как имя файла исходного кода в сообщениях об ошибках вместо file. Если doraise имеет значение true, возникает исключениеPyCompileError, когда возникает ошибка при компиляции file. Если doraise имеет значение false (по умолчанию), строка ошибки записывается вsys.stderr, но исключение не генерируется.
-
py_compile.main([args]) -
Компилирует несколько файлов исходного кода. Файлы, перечисленные в args (или в командной строке, если args не указан), компилируются, а полученный байткод кешируется обычным способом. Эта функция не выполняет поиск в структуре директорий для поиска файлов исходного кода; она компилирует только явно указанные файлы. Если
'-'является единственным параметром в args, список файлов берется из стандартного ввода.Изменено в версии 2.7: Добавлена поддержка
'-'.
Когда этот модуль выполняется как скрипт, используется main() для компиляции всех файлов, указанных в командной строке. Код возврата не равен нулю, если один из файлов не удалось скомпилировать.
Изменено в версии 2.6: Добавлен код возврата, отличный от нуля, когда модуль выполняется как скрипт.
См. также
-
Modulecompileall -
Утилиты для компиляции всех файлов исходного кода Python в дереве каталогов.
© 2001–2020 Python Software Foundation
Licensed under the PSF License.
https://docs.python.org/2.7/library/py_compile.html