py_compile
源代码: Lib / py_compile.py
该py_compile
模块提供了从源文件生成字节码文件的功能,以及将模块源文件作为脚本调用时使用的另一个功能。
虽然不是经常需要,但在安装共享使用模块时,此功能可能很有用,特别是如果某些用户可能没有权限在包含源代码的目录中写入字节代码缓存文件。
exception py_compile.PyCompileError
当尝试编译文件时发生错误时引发异常。
py_compile.compile(file[, cfile[, dfile[, doraise]]])
将源文件编译为字节码并写出字节码高速缓存文件。源代码是从名为file的文件中加载的。字节码被写入cfile,默认为文件 +
'c'
('o'
如果在当前解释器中启用了优化)。如果指定了dfile,则将其用作错误消息中源文件的名称而不是文件。如果doraise为true,PyCompileError
则在编译文件时遇到错误时会引发a 。如果doraise为false(缺省值),则会写入错误字符串sys.stderr
,但不会引发异常。
py_compile.main([args])
编译几个源文件。在args中命名的文件(或者在命令行上,如果没有指定args)被编译,并且产生的字节码以正常方式被缓存。该功能不搜索目录结构来定位源文件; 它只编译明确指定的文件。如果'-'
是参数中唯一的参数,则文件列表取自标准输入。
在版本2.7中更改:添加了对'-'
。
当该模块作为脚本运行时,该模块main()
用于编译在命令行上命名的所有文件。如果其中一个文件无法编译,则退出状态为非零。
在版本2.6中进行了更改:当模块作为脚本运行时,添加了非零退出状态。
扩展内容
Module
compileall
工具来编译目录树中的所有Python源文件。
本文档系腾讯云开发者社区成员共同维护,如有问题请联系 cloudcommunity@tencent.com