[Python]批量編譯pyc檔案

weixin_34162695發表於2018-08-28

pyc檔案是py檔案編譯後生成的位元組碼檔案(byte code)。pyc檔案經過python直譯器最終會生成機器碼執行。所以pyc檔案是可以跨平臺部署的,類似Java的.class檔案。一般py檔案改變後,都會重新生成pyc檔案。

為什麼要手動提前生成pyc檔案呢,主要是不想把原始碼暴露出來。

一、批量pyc遞迴生成

python -m compileall <dir>
### 直接遞迴把資料夾下的py編譯成pyc了

或者

import compileall
compileall.compile_dir(r'/path')
### 這個函式的格式如下:  compile_dir(dir[, maxlevels[, ddir[, force[, rx[, quiet]]]]])

二、生成單個pyc檔案

對於py檔案,可以執行下面命令來生成pyc檔案。

python -m foo.py

另外一種方式是通過程式碼來生成pyc檔案。

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

相關文章