引言
在計算機行業,其中一個非常重要的任務就是在不同的計算機上運行程序。為了實現這個目的,我們通常需要將我們的程序製作成可執行文件。Python是一種非常流行的編程語言,很多人喜歡使用它編寫程序
對於Python編程愛好者來說,有時候需要將自己的Python腳本變為用戶友好的executables。雖然Python是跨平台的,但是向沒有Python安裝的Windows用戶發送Python腳本可以成為一項挑戰。這就是exe文件的作用,它是可執行文件的一種類型,能夠使用戶不必安裝Python解釋器的情況下仍然可運行Python程序。
正文
一、Pyinstaller 包
Pyinstaller是一個Python打包器,它使您可以將Python應用程序包裝成單個可執行文件。與cx_freeze、 py2exe和其他Python打包器相比, Pyinstaller能夠打包大多數庫(包括元數據和依賴項),因此您可以放心地將應用程序分發給非Python用戶。Pyinstaller還可以獨立處理依賴項,並將其中的大多數放入包中。安裝 Pyinstaller 很容易,只需要在控制台中運行:
pip install pyinstaller
此時可以將main.py或your_script.py文件轉換為可執行文件。運行以下命令:
pyinstaller your_script.py
然後會創建一個dist文件夾,輸入以下命令就可以運行exe文件。
cd dist your_script.exe
二、打包圖形化界面
通過 Pyinstaller 創建exe文件,需要注意程序中是否有圖形化的界面。如果程序中沒有圖形化界面,可以直接使用 Pyinstaller 創建exe文件。如果程序中有圖形化界面,我們需要使用相應的UI toolkit,例如PyQt5或者tkinter。
在使用Pyinstaller製作圖形化界面的可執行文件時,需要提供一些特定的參數。例如,如果您的 Python 代碼需要使用 PyQt5 模塊,您可以使用以下命令:
pyinstaller --onefile --windowed --name=your_script your_script.py
在代碼中直接調用python文件也可能會報錯,需要在代碼中添加以下代碼
if hasattr(sys, 'frozen'): os.environ['PATH'] = sys._MEIPASS + ";" + os.environ['PATH']
這段代碼允許 Pyinstaller 可以在運行時找到所需的文件。
三、執行文件的文件大小優化
使用 Pyinstaller 打包好的exe文件在文件大小上可能會很大,甚至可能超過100MB。可以嘗試通過以下技巧來優化。
1、刪除你的應用程序中未使用的依賴項或庫,以減小文件的大小。
2、將依賴項和庫文件放到一個目錄或文件中,再將其添加到 PATH 環境變量中。
3、使用 UPX(可執行文件壓縮器)或是其它優化工具來減小文件的大小。
總結
PyInstaller 是一個方便,易於上手,且功能強大的 Python 打包工具。使用 PyInstaller,可以將 Python 腳本及其依賴項打包到一個可執行文件中,使其更容易在其他計算機上分發和運行。
為了更好的用戶體驗,許多應用程序製作者都使用 PyInstaller 來處理其應用程序的發佈。但為了減小文件大小,還需要進行一些額外的手動操作。因此,在實際應用中,我們還可以根據需要使用 PyInstaller 來定製自己的exe文件。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/242624.html