Computer >> Máy Tính >  >> Lập trình >> Python

Làm thế nào để gói một ứng dụng Python Tkinter bao gồm các phụ thuộc?

Giả sử chúng tôi đã tạo một ứng dụng tkinter và bây giờ, chúng tôi muốn gói ứng dụng độc lập để làm cho nó có thể di động và thực thi được. Chúng ta có thể sử dụng các gói Python khác nhau hỗ trợ các chức năng khác nhau để gói toàn bộ mã ứng dụng vào một trình cài đặt thực thi. Các gói này nén mã và chuyển đổi ứng dụng độc lập thành mã thực thi.

Đối với người dùng dựa trên Windows, chúng tôi có thể sử dụng py2exe; đối với Linux, chúng tôi có thể sử dụng Freeze; và đối với Mac, chúng tôi có thể sử dụng py2app .

Ví dụ

Trong ví dụ này, chúng tôi đã tạo một ứng dụng dựa trên Windows để in “Hello World” trên màn hình. Ban đầu, chúng tôi sẽ tạo một setup.py tệp trong cùng thư mục nơi tệp ứng dụng chính tồn tại. Sau đó, chúng tôi sẽ mở rộng chức năng của tệp ứng dụng chính bằng cách chuyển tên tệp làm tham số trong setup.py .

setup.py

from distutils.core import setup
import py2exe

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

Bây giờ, hãy nhập và chạy setup.py với py2exe gói trong trình bao lệnh. Sau khi chạy lệnh, nó sẽ tạo ra một dist trong cùng một thư mục chứa tệp thực thi có tên là “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()

Đầu ra

Chạy main_app.exe tệp sẽ mở cửa sổ sau với một Nút và một Nhãn trong đó.

Làm thế nào để gói một ứng dụng Python Tkinter bao gồm các phụ thuộc?