在 Ubuntu 上做 Python 图形界面
一 环境准备
python3 --version、pip3 --versionsudo apt update && sudo apt install python3-pippython3 -m tkinter(弹窗即正常)sudo apt install python3-tkpython3 -m venv venv && source venv/bin/activate。二 常用方案与安装
| 方案 | 适用场景 | Ubuntu 安装 | 最小示例代码 |
|---|---|---|---|
| Tkinter | 入门、内置、轻量 | sudo apt install python3-tk |
import tkinter as tk; root=tk.Tk(); root.title("Hi"); tk.Label(root,text="Hello").pack(); root.mainloop() |
| PyQt5 | 复杂桌面、控件丰富、跨平台 | pip3 install pyqt5 或 sudo apt install python3-pyqt5 |
from PyQt5.QtWidgets import QApplication,QLabel; app=QApplication([]); QLabel("Hello").show(); app.exec_() |
| Kivy | 触控、移动与桌面跨平台 | pip3 install kivy 或 sudo apt install python3-kivy |
from kivy.app import App; from kivy.uix.label import Label; class A(App): def build(self): return Label(text="Hi"); A().run() |
| wxPython | 本地外观、跨平台 | pip3 install wxPython 或 sudo apt install python3-wxgtk4.0 |
import wx; app=wx.App(); f=wx.Frame(None,-1,"Hi"); wx.StaticText(f,-1,"Hello",(50,50)); f.Show(); app.MainLoop() |
| GTK+ 3(PyGObject) | 贴合 GNOME、Linux 原生风格 | sudo apt install python3-gi gir1.2-gtk-3.0 |
import gi; gi.require_version('Gtk','3.0'); from gi.repository import Gtk; w=Gtk.Window(title="Hi"); w.add(Gtk.Label(label="Hello")); w.connect("destroy",Gtk.main_quit); w.show_all(); Gtk.main() |
| CustomTkinter | 现代化主题外观(基于 Tkinter) | pip3 install customtkinter |
import customtkinter as ctk; ctk.set_appearance_mode("dark"); ctk.set_default_color_theme("blue"); r=ctk.CTk(); r.geometry("300x200"); r.title("Hi"); r.mainloop() |
| 以上示例均为可直接运行的“最小可用”窗口,适合快速验证环境是否可用。 |
三 入门步骤
python3 main.pypip install pyinstaller,打包为单文件:pyinstaller --onefile main.py(GUI 程序建议加上 --windowed 隐藏控制台)。四 如何选择