七个Python必备的GUI库
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
七个Python必备的GUI库
⽬录
01. PyQt5
02. Tkinter
03. Kivy
04. wxPython
05. PySimpleGUI
06. PyGUI
07. Pyforms
项⽬地址:
GUI(图形⽤户界⾯),顾名思义就是⽤图形的⽅式,来显⽰计算机操作的界⾯,更加⽅便且直观。
与之相对应的则是CUI(命令⾏⽤户交互),就是常见的Dos命令⾏操作,需要记忆⼀些常⽤的命令,对于普通⼈⽽⾔,操作起来学习难度还是蛮⾼的。
⼀个好看⼜好⽤的GUI,可以⼤⼤提⾼⼤家的使⽤体验,提⾼效率。
⽐如你想开发⼀个计算器,如果只是⼀个程序输⼊,输出窗⼝的话,是没有⽤户体验的。
所以开发⼀个图像化的⼩窗⼝,就变得很有必要。
今天,⼩F就给⼤家介绍七个Python必备的GUI库,每⼀个都值得学习。
01. PyQt5
PyQt5由Riverbank Computing开发。
基于Qt框架构建,是⼀个跨平台框架,可以给各种平台创建应⽤程序,包括:Unix、Windows、Mac OS。
PyQt将Qt和Python结合在⼀起。
它不只是⼀个GUI⼯具包。
还包括了线程,Unicode,正则表达式,SQL数据
库,SVG,OpenGL,XML和功能完善的Web浏览器,以及许多丰富的GUI⼩部件集合。
使⽤pip安装⼀下。
# 安装PyQt5
pip install -i https:///simple PyQt5
安装成功后,来个Hello Word简单⽰例。
import sys
from PyQt5.QtWidgets import QApplication, QWidget, QLabel, QVBoxLayout
# 建⽴application对象
app = QApplication(sys.argv)
# 建⽴窗体对象
w = QWidget()
# 设置窗体⼤⼩
w.resize(500, 500)
# 设置样式
yout = QVBoxLayout()
bel = QLabel("Hello World!")
bel.setStyleSheet("font-size:25px;margin-left:155px;")
w.setWindowTitle("PyQt5 窗⼝")
yout.addWidget(bel)
w.setLayout(yout)
# 显⽰窗体
w.show()
# 运⾏程序
sys.exit(app.exec_())
结果如下。
⽂档地址:
教程链接:
02. Tkinter
Tkinter是Python中最受欢迎的GUI库之⼀。
由于它简单易学的语法,成为GUI开发初学者的⾸选之⼀。
Tkinter提供了各种⼩部件,例如标签,按钮,⽂本字段,复选框和滚动按钮等。
⽀持Grid(⽹格)布局,由于我们的程序⼤多数都是矩形显⽰,这样即使是复杂的设计,开发起来也变得简单些。
# 安装tkinter
pip install -i https:///simple tkinter
下⾯使⽤Tkinter设计⼀个BMI计算器。
以重量和⾼度作为输⼊,并在弹出框中返回BMI系数作为输出。
from tkinter import *
from tkinter import messagebox
def get_height():
# 获取⾝⾼数据(cm)
height = float(ENTRY2.get())
return height
def get_weight():
# 获取体重数据(kg)
weight = float(ENTRY1.get())
return weight
def calculate_bmi():
# 计算BMI系数
try:
height = get_height()
weight = get_weight()
height = height / 100.0
bmi = weight / (height ** 2)
except ZeroDivisionError:
messagebox.showinfo("提⽰", "请输⼊有效的⾝⾼数据!!")
except ValueError:
messagebox.showinfo("提⽰", "请输⼊有效的数据!")
else:
messagebox.showinfo("你的BMI系数是: ", bmi)
if __name__ == '__main__':
# 实例化object,建⽴窗⼝TOP
TOP = Tk()
TOP.bind("<Return>", calculate_bmi)
# 设定窗⼝的⼤⼩(长 * 宽)
TOP.geometry("400x400")
# 窗⼝背景颜⾊
TOP.configure(background="#8c52ff")
# 窗⼝标题
TOP.title("BMI 计算器")
TOP.resizable(width=False, height=False)
LABLE = Label(TOP, bg="#8c52ff", fg="#ffffff", text="欢迎使⽤ BMI 计算器", font=("Helvetica", 15, "bold"), pady=10)
LABLE.place(x=55, y=0)
LABLE1 = Label(TOP, bg="#ffffff", text="输⼊体重(单位:kg):", bd=6,
font=("Helvetica", 10, "bold"), pady=5)
LABLE1.place(x=55, y=60)
ENTRY1 = Entry(TOP, bd=8, width=10, font="Roboto 11")
ENTRY1.place(x=240, y=60)
LABLE2 = Label(TOP, bg="#ffffff", text="输⼊⾝⾼(单位:cm):", bd=6,
font=("Helvetica", 10, "bold"), pady=5)
LABLE2.place(x=55, y=121)
ENTRY2 = Entry(TOP, bd=8, width=10, font="Roboto 11")
ENTRY2.place(x=240, y=121)
BUTTON = Button(bg="#000000", fg='#ffffff', bd=12, text="BMI", padx=33, pady=10, command=calculate_bmi,
font=("Helvetica", 20, "bold"))
BUTTON.grid(row=5, column=0, sticky=W)
BUTTON.place(x=115, y=250)
TOP.mainloop()
界⾯如下。
当没有数据时,点击BMI按钮,会有与之对应的提⽰。
下⾯我们使⽤正确的数据,来看看结果。
使⽤起来感觉还是不错的。
03. Kivy
Kivy是另⼀个开源的Python库,最⼤的优点就是可以快速地编写移动应⽤程序(⼿机)。
Kivy可以在不同的平台上运⾏,包括Windows、Mac OS、Linux、Android、iOS和树莓派。
此外也是免费使⽤的,获得了MIT许可。
# 安装kivy
pip install -i https:///simple kivy
⼀个基于Kivy的Hello World窗⼝。
from kivy.app import App
from kivy.uix.button import Button
class TestApp(App):
def build(self):
return Button(text=" Hello Kivy World ")
TestApp().run()
结果如下。
04. wxPython
wxPython是⼀个跨平台GUI的Python库,可轻松创建功能强⼤稳定的GUI,毕竟是⽤C++编写的~
⽬前,⽀持Windows,Mac OS X,macOS和Linux。
使⽤wxPython创建的应⽤程序(GUI)在所有平台上都具有原⽣外观。
# 安装wxPython
pip install -i https:///simple wxPython
下⾯使⽤wxPython创建⼀个基本的GUI⽰例。
import wx
myapp = wx.App()
init_frame = wx.Frame(parent=None, title='WxPython 窗⼝')
init_frame.Show()
myapp.MainLoop()
结果如下
05. PySimpleGUI
PySimpleGUI也是基于Python的GUI框架。
可以轻松制作⾃定义的GUI。
采⽤了四种最流⾏的GUI框架QT、Tkinter、WxPython和Remi,能够实现⼤多数样例代码,降低了学习难度。
Remi将应⽤程序的界⾯转换为HTML,以便在Web浏览器中呈现。
# 安装PySimpleGUI
pip install -i https:///simple PySimpleGUI
下⾯是⼀个简单的案例。
import PySimpleGUI as sg
layout = [[sg.Text("测试 PySimpleGUI")], [sg.Button("OK")]]
window = sg.Window("样例", layout)
while True:
event, values = window.read()
if event == "OK" or event == sg.WIN_CLOSED:
break
window.close()
结果如下。
点击OK按钮,窗⼝消失。
06. PyGUI
PyGUI是⼀个以简单API⽽闻名的GUI框架,减少Python应⽤与平台底层GUI之间的代码量。
轻量级的API,可以让你的应⽤程序运⾏起来更流畅,更快速。
同时还开源代码,跨平台项⽬。
⽬前可在基于Unix的系统,Windows和Mac OS上运⾏。
Python2和Python3,都是可以⽀持的。
⽂档地址:
教程链接:
07. Pyforms
Pyforms是⽤于开发GUI应⽤程序的⼀个跨平台框架。
pyforms是⼀个Python2.7/3.x跨环境图形应⽤开发框架,模块化和代码复⽤可以节省⼤量⼯作。
允许应⽤程序在桌⾯,Web和终端上运⾏,⽆需修改代码。
# 安装PyFroms
pip install -i https:///simple PyFroms
项⽬地址:
以上就是七个Python必备的GUI库的详细内容,更多关于python gui库的资料请关注其它相关⽂章!。