[心得] python打包

tangchen2016發表於2016-10-28

乾貨

安裝pyinstaller
pip install pyinstaller
pyinstaller : 打包可執行檔案的主要命令
pyi-archive_viewer : 檢視可執行包裡面的檔案列表。
pyi-bindepend : 檢視可執行檔案依賴的動態庫(.so.dll檔案)

pyInstaller支援單檔案模式,只需要執行:

pyinstaller -F mycript.py
你會發現dist下面只有一個可執行檔案,可以執行在你正在使用的作業系統類似的系統的下面。

PyInstaller其實就是把python解析器和你自己的指令碼打包成一個可執行的檔案,和編譯成真正的機器碼完全是兩回事,所以千萬不要指望成打包成一個可執行檔案會提高執行效率,相反可能會降低執行效率,好處就是在執行者的機器上不用安裝python和你的指令碼依賴的庫。在Linux作業系統下,它主要用的binutil工具包裡面的ldd和objdump命令。需要注意的是,PyInstaller打包的執行檔案,只能在和打包機器系統同樣的環境下。

定位其他人的包的方法:
import target_pkg
print target_pkg.__file__

相關文章