在 Python 開發中,將 Python 指令碼打包成可執行檔(.exe)是一種常見的需求。將 Python 程式碼打包成可執行檔可以使得程式在沒有安裝 Python 直譯器的環境下執行,也方便程式的釋出和分發。本文將介紹幾種常見的方法來將 Python 程式碼打包成可執行檔。
一、pyinstaller(最常用)
pyinstaller 是一個流行的 Python 打包工具,可以將 Python 指令碼打包成各種平台的可執行檔,包括 Windows、Linux 和 macOS。使用 pyinstaller 可以非常簡單地將 Python 程式碼打包成獨立的可執行檔。
安裝 pyinstaller
pip install pyinstaller
使用 pyinstaller 打包
# 打包單個檔 pyinstaller your_script.py # 打包多個py檔 pyinstaller [主檔] -p [其他檔1] -p [其他檔2] # 打包時去除cmd框 pyinstaller -F XXX.py --noconsole # 打包加入exe圖示 picturename.ico是圖片 pyinstaller -F -i picturename.ico -w XXX.py # 打包去除控制台 pyinstaller -w xxx.py # 打包方便檢視報錯,可看到控制台 pyinstaller -c xxx.py """ 錯誤 class RegexFlag(enum.IntFlag): AttributeError: module 'enum' has no attribute 'IntFlag' 檢視是否安裝enum34包 解除安裝enum34即可,python程式可正常執行 """
執行以上命令後,pyinstaller 將會在當前目錄下生成一個 dist 資料夾,其中包含了打包好的可執行檔。
二、cx_Freeze
cx_Freeze 是另一個常用的 Python 打包工具,可以將 Python 指令碼打包成可執行檔,並且支持跨平台。使用 cx_Freeze 也可以將 Python 程式碼打包成獨立的可執行檔。
安裝 cx_Freeze
pip install cx-Freeze
使用 cx_Freeze 打包
cxfreeze your_script.py --target-dir dist
執行以上命令後,cx_Freeze 將會在指定的目錄下生成可執行檔。
三、Py2exe
Py2exe 是專門用於將 Python 指令碼打包成 Windows 平台可執行檔的工具。雖然 Py2exe 已經停止維護,但是仍然可以使用它來將 Python 指令碼打包成可執行檔。
安裝 Py2exe
pip install py2exe
使用 Py2exe 打包
python setup.py py2exe
在計畫目錄下建立一個名為 setup.py 的檔,內容如下:
from distutils.core import setup import py2exe setup(console=['your_script.py'])
執行以上命令後,Py2exe 將會在 dist 目錄下生成可執行檔。