如何打包包含依賴項的 Python Tkinter 應用程式?


假設我們已經建立了一個 Tkinter 應用程式,現在,我們希望打包一個獨立的應用程式以使其可移植和可執行。我們可以使用不同的 Python 包,這些包支援各種功能,將整個應用程式程式碼捆綁到一個可執行安裝程式中。這些包壓縮程式碼並將獨立應用程式轉換為可執行程式碼。

對於基於 Windows 的使用者,我們可以使用 **py2exe**;對於 Linux,我們可以使用 **Freeze**;對於 Mac,我們可以使用 **py2app**。

示例

在這個例子中,我們建立了一個基於 Windows 的應用程式,它在螢幕上列印“Hello World”。最初,我們將在主應用程式檔案所在的同一目錄中建立一個 **setup.py** 檔案。然後,我們將透過在 **setup.py** 中將檔名作為引數傳遞來擴充套件主應用程式檔案的功能。

setup.py

from distutils.core import setup
import py2exe

setup(console=['main_app.py'])

現在,在命令列中鍵入並執行帶有 **py2exe** 包的 **setup.py**。執行命令後,它將在同一目錄中建立一個 **dist** 資料夾,其中包含一個名為“main_app.exe”的可執行檔案。

main_app.py

#Import the tkinter library
from tkinter import *

#Create an instance of tkinter frame
win = Tk()

#Set the geometry
win.geometry("600x400")

def present():
   Label(win, text="Hello World", font=('Times New Roman bold',30)).pack(pady=10)

Button(win, text="Click Me", command= present).pack(pady=20)
win.mainloop()

輸出

執行 **main_app.exe** 檔案將開啟以下視窗,其中包含一個按鈕和一個標籤。

更新於: 2021年3月26日

812 次瀏覽

開啟你的 職業生涯

透過完成課程獲得認證

開始學習
廣告