easygui
安装
在命令行中执行以下命令安装:
pip install easygui
Python 简易图形界面库 easygui 提供了多种内置对话框用于构建桌面交互界面。内容涵盖库的安装导入流程,详解 msgbox、ccbox、boolbox、ynbox、choicebox、integerbox、buttonbox、enterbox、textbox 等九类对话框的参数配置与返回值处理,并补充 fileopenbox、diropenbox、filesavebox 等文件操作对话框的实战代码示例,旨在帮助开发者快速实现基础 GUI 功能。

在命令行中执行以下命令安装:
pip install easygui
示例输出:
Looking in indexes: https://pypi.tuna.tsinghua.edu.cn/simple
Collecting easygui
Using cached easygui-0.98.3-py2.py3-none-any.whl (92 kB)
Installing collected packages: easygui
Successfully installed easygui-0.98.3
import easygui
print(easygui.__all__)
运行后可见 easygui 包含多种对话框样式,如 buttonbox, diropenbox, fileopenbox, msgbox 等。
显示文本消息并提供'确定'按钮。消息文本显示在窗口中心,标题显示在标题栏。
参数说明:
msg: 要显示的文本消息title: 窗口标题ok_button: 按钮上的文本(默认为 OK)代码示例:
import easygui
easygui.msgbox("备份完成!", title="结束", ok_button="干得好!")
提供'继续'和'取消'选项,返回 True 或 False。
参数说明:
choices: 选项列表default_choice: 默认高亮选项cancel_choice: 关闭弹窗时触发的选项代码示例:
import easygui
result = easygui.ccbox(
"是否退出程序?",
"确认",
choices=["退出 [E]", "取消 [C]"]
)
if result:
print("用户选择继续")
else:
print("用户选择取消")
显示两个按钮,返回 True 或 False。
代码示例:
import easygui
message = "他们喜欢你吗?"
title = "情感问题"
if easygui.boolbox(message, title, ["喜欢我", "不喜欢我"]):
easygui.msgbox("你应该送花给他们。")
else:
easygui.msgbox("也许不是时候。")
提供 Yes 和 No 的选择,返回 True 或 False。
代码示例:
import easygui
result = easygui.ynbox('热狗算三明治吗?', '食物定义')
if result:
easygui.msgbox('这是一个有趣的观点。')
else:
easygui.msgbox('好吧,这是你的看法。')
在列表框中提供多个选项供用户选择。
代码示例:
import easygui
msg = "你最喜欢的口味是什么?"
title = "冰淇淋调查"
choices = ["香草", "巧克力", "草莓", "咖啡拿铁"]
choice = easygui.choicebox(msg, title, choices)
if choice:
print(f"选择了:{choice}")
else:
print("用户取消了选择")
允许用户输入整数,并验证是否在指定范围内。
参数说明:
default: 默认值lowerbound: 最小值upperbound: 最大值代码示例:
import easygui
result = easygui.integerbox(
'请输入一个 1 到 100 之间的整数:',
default=50,
lowerbound=1,
upperbound=100
)
if result is not None:
print(f"输入的整数为:{result}")
显示多个自定义按钮,返回点击的按钮文本。
代码示例:
import easygui as eg
action = eg.buttonbox(
msg='请选择操作:',
title='菜单',
choices=('浏览...', '确定', '取消'),
default_choice='确定'
)
print(f"用户点击了:{action}")
用于输入单行文本,可设置默认值。
代码示例:
import easygui as eg
reply = eg.enterbox('请输入车牌号:', '单行文本框', default='例如:苏 ENH905')
if reply:
eg.msgbox(f'你的输入为:{reply}')
else:
eg.msgbox('输入为空或已取消')
显示带有多行文本框的对话框,适合输入长文本。
代码示例:
import easygui as eg
template = '''基本信息
姓名:
年龄:
工作经历
公司 A:
职位:'''
reply = eg.textbox(
msg='请按模板填写信息:',
title='简历录入',
text=template
)
print(reply)
弹出文件选择对话框,返回选中的文件路径。
代码示例:
import easygui
filename = easygui.fileopenbox()
if filename:
print(f"打开的文件:{filename}")
弹出目录选择对话框,返回选中的文件夹路径。
代码示例:
import easygui
dirpath = easygui.diropenbox()
if dirpath:
print(f"选择的目录:{dirpath}")
弹出文件保存对话框,允许用户指定保存路径和文件名。
代码示例:
import easygui
filepath = easygui.filesavebox(default='/tmp/output.txt')
if filepath:
print(f"保存路径:{filepath}")
easygui 提供了丰富的内置对话框,能够以极少的代码实现常见的桌面交互需求。开发者可根据具体场景选择合适的对话框类型,结合参数配置优化用户体验。对于更复杂的 GUI 需求,可在此基础上扩展或使用其他专业库。

微信公众号「极客日志」,在微信中扫描左侧二维码关注。展示文案:极客日志 zeeklog
解析常见 curl 参数并生成 fetch、axios、PHP curl 或 Python requests 示例代码。 在线工具,curl 转代码在线工具,online
将字符串编码和解码为其 Base64 格式表示形式即可。 在线工具,Base64 字符串编码/解码在线工具,online
将字符串、文件或图像转换为其 Base64 表示形式。 在线工具,Base64 文件转换器在线工具,online
将 Markdown(GFM)转为 HTML 片段,浏览器内 marked 解析;与 HTML转Markdown 互为补充。 在线工具,Markdown转HTML在线工具,online
将 HTML 片段转为 GitHub Flavored Markdown,支持标题、列表、链接、代码块与表格等;浏览器内处理,可链接预填。 在线工具,HTML转Markdown在线工具,online
通过删除不必要的空白来缩小和压缩JSON。 在线工具,JSON 压缩在线工具,online