32.10. py_compile — Compilar arquivos fonte do Python

Código-Fonte: Lib/py_compile.py


O módulo py_compile fornece uma função para gerar um arquivo de bytecode a partir de um arquivo fonte, e outra função usada quando o arquivo fonte do módulo é chamado como um script.

Embora nem sempre seja necessária, essa função pode ser útil ao instalar módulos para uso compartilhado, especialmente se alguns usuários não tiverem permissão para gravar os arquivos de cache de bytecodes no diretório que contém o código-fonte.

exception py_compile.PyCompileError

Exceção levantada quando ocorre um erro ao tentar compilar o arquivo.

py_compile.compile(file[, cfile[, dfile[, doraise]]])

Compile a source file to byte-code and write out the byte-code cache file. The source code is loaded from the file named file. The byte-code is written to cfile, which defaults to file + 'c' ('o' if optimization is enabled in the current interpreter). If dfile is specified, it is used as the name of the source file in error messages instead of file. If doraise is true, a PyCompileError is raised when an error is encountered while compiling file. If doraise is false (the default), an error string is written to sys.stderr, but no exception is raised.

py_compile.main([args])

Compile several source files. The files named in args (or on the command line, if args is not specified) are compiled and the resulting bytecode is cached in the normal manner. This function does not search a directory structure to locate source files; it only compiles files named explicitly. If '-' is the only parameter in args, the list of files is taken from standard input.

Alterado na versão 2.7: Adicionado suporte a '-'.

Quando este módulo é executado como um script, main() é usada para compilar todos os arquivos nomeados na linha de comando. O status de saída é diferente de zero se um dos arquivos não pôde ser compilado.

Alterado na versão 2.6: Added the nonzero exit status when module is run as a script.

Ver também

Módulo compileall

Utilitários para compilar todos os arquivos fontes Python em uma árvore de diretórios.