Python生成pyc文件

Python生成pyc文件

pyc文件是py文件编译后生成的字节码文件(byte code)。pyc文件通过python解释器最终会生成机器码运行。因此pyc文件是能够跨平台部署的,相似Java的.class文件。通常py文件改变后,都会从新生成pyc文件。html

为何要手动提早生成pyc文件呢,主要是不想把源代码暴露出来。python

生成单个pyc文件

对于py文件,能够执行下面命令来生成pyc文件。正则表达式

python -m foo.py

另一种方式是经过代码来生成pyc文件。函数

import py_compile
py_compile.compile('/path/to/foo.py')

批量生成pyc文件

针对一个目录下全部的py文件进行编译。python提供了一个模块叫compileall,具体请看下面代码:ui

import compileall
compileall.compile_dir(r'/path')

这个函数的格式以下:.net

compile_dir(dir[, maxlevels[, ddir[, force[, rx[, quiet]]]]])

参数含义:命令行

  • maxlevels: 递归编译的层数
  • ddir: If ddir is given, it is prepended to the path to each file being compiled for use in compilation time tracebacks, and is also compiled in to the byte-code file, where it will be used in tracebacks and other messages in cases where the source file does not exist at the time the byte-code file is executed. (谁能翻译一下( ⊙o⊙?)不懂)
  • force: 若是True,不管是是否有pyc,都从新编译
  • rx: 一个正则表达式,排除掉不想要的目录
  • quiet:若是为True,则编译不会在标准输出中打印信息

命令行为:翻译

python -m compileall <dir>

@完code


参考:htm

相关文章
相关标签/搜索