在使用anaconda+vscode寫完python代碼之後,相信很多人都會這樣一個疑問:我們如何將這些python程序提供給普通用戶使用呢?偉大的前輩早已替我們想好了辦法——python程序的打包。
python打包的方法主要有4種:
- py2exe
- pyinstaller
- cx_Freeze
- nuitka
其中,pyinstaller是目前應用最多的python打包工具,因此我選擇了pyinstaller工具來進行打包。
優點:
- 可將python文件轉成可執行文件
- 跨平臺(支持Windows和Linux)
- 輸出的可以是單一目錄,也可以是一個單獨的打好包的可執行文件。py2exe貌似輸出目錄。
- 智能支持python的第三方模塊如PyQt,外部數據文件等
- 支持EGG格式文件
- 可執行文件可以用UPX壓縮,二進制壓縮方式
- 支持控制檯和視窗兩種方式。
- 可以選擇exe文件的圖標 (Windows only)
- 支持 COM server (Windows only)
缺點:
- import導入的問題
安裝pyinstaller
在vscode的anaconda環境下執行pip命令:
pip install pyinstaller
由於網絡原因安裝失敗的,可以嘗試用手機流量分享熱點下載(總共3.5MB)。
使用pyinstaller
- 普通打包(帶控制檯窗口)
pyinstaller main.py
- GUI程序打包(屏蔽控制檯窗口)
pyinstaller mainwindow.py --noconsole
- 完全打包(類似靜態編譯的APP)
pyinstaller -F mainwindow.py --noconsole