阅读量:2
在 Ubuntu 上做 Python 图形界面
一 环境准备
- 确认已安装 Python 3 与 pip:
- 查看版本:
python3 --version、pip3 --version - 更新并安装 pip:
sudo apt update && sudo apt install python3-pip
- 查看版本:
- Tkinter 检查与安装(Python 自带,但部分系统需单独安装 GUI 依赖):
- 检查:
python3 -m tkinter(弹窗即正常) - 安装:
sudo apt install python3-tk
- 检查:
- 建议使用 虚拟环境:
python3 -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() |
| 以上示例均为可直接运行的“最小可用”窗口,适合快速验证环境是否可用。 |
三 入门步骤
- 选库与安装:按上表选择你的库并执行安装命令(优先虚拟环境)。
- 写最小示例:复制对应“最小示例代码”,保存为如 main.py。
- 运行与调试:
- 直接运行:
python3 main.py - 无界面或报错:检查是否在虚拟环境、依赖是否装到当前环境、是否缺少系统库(如 python3-tk、python3-gi 等)。
- 直接运行:
- 打包发布(可选):
- 使用 PyInstaller:
pip install pyinstaller,打包为单文件:pyinstaller --onefile main.py(GUI 程序建议加上--windowed隐藏控制台)。
- 使用 PyInstaller:
四 如何选择
- 追求上手速度与内置可用:选 Tkinter。
- 需要复杂界面、主题样式与成熟生态:选 PyQt5(或 PySide2/6)。
- 触控交互、移动端或跨平台一致体验:选 Kivy。
- 期望更接近 Linux/GNOME 原生外观:选 GTK+ 3(PyGObject)。
- 想要现代化主题且基于 Tkinter:选 CustomTkinter。
- 需要本地外观与成熟桌面控件:选 wxPython。
以上就是关于“Ubuntu里Python图形界面怎么做”的相关介绍,筋斗云是国内较早的云主机应用的服务商,拥有10余年行业经验,提供丰富的云服务器、租用服务器等相关产品服务。云服务器资源弹性伸缩,主机vCPU、内存性能强悍、超高I/O速度、故障秒级恢复;电子化备案,提交快速,专业团队7×24小时服务支持!
简单好用、高性价比云服务器租用链接:https://www.jindouyun.cn/product/cvm