在Ubuntu上进行Python图形界面编程,可选择以下库及方法:
Tkinter:Python标准库,无需额外安装,适合简单界面。
import tkinter as tk
root = tk.Tk()
root.title("Tkinter示例")
tk.Label(root, text="Hello, Tkinter!").pack()
root.mainloop()
PyQt5/PySide6:功能强大,支持复杂界面,需安装。
sudo apt install python3-pyqt5 # PyQt5
# 或
pip install PySide6 # PySide6
示例代码:
from PyQt5.QtWidgets import QApplication, QLabel
app = QApplication([])
label = QLabel("Hello, PyQt5!")
label.show()
app.exec_()
Kivy:适合多点触控应用,跨平台支持。
pip install kivy
示例代码:
from kivy.app import App
from kivy.uix.label import Label
class MyApp(App):
def build(self):
return Label(text="Hello, Kivy!")
MyApp().run()
wxPython:跨平台GUI库,需安装。
sudo apt install python3-wxgtk4.0
示例代码:
import wx
app = wx.App(False)
frame = wx.Frame(None, wx.ID_ANY, "wxPython示例")
frame.Show(True)
app.MainLoop()
PyGObject(GTK):用于开发原生Linux桌面应用。
sudo apt install python3-gi gir1.2-gtk-3.0
示例代码:
import gi
gi.require_version('Gtk', '3.0')
from gi.repository import Gtk
class MyWindow(Gtk.Window):
def __init__(self):
super().__init__(title="GTK示例")
self.add(Gtk.Label(label="Hello, GTK!"))
win = MyWindow()
win.connect("destroy", Gtk.main_quit)
win.show_all()
Gtk.main()
根据项目需求选择库:简单工具选Tkinter,复杂桌面应用选PyQt5/PySide6,跨平台或移动端选Kivy。