chriskiehl

Gooey

Gooey 是一个 Python 库,只需在 argparse 程序上加一行装饰器,就能把命令行工具变成带表单、进度条和输出窗口的跨平台桌面 GUI 应用。

1.0.8.2
发布于
18 小时前
21,895
星标
1,143
下载
同步于
9 小时前

最新版本

1.0.8.22026年10月28日 13:09
下载慢?可在上方随时切换镜像源

项目说明

项目概述

Gooey 可以把几乎任何 Python 3 命令行程序一键变成图形界面应用。它基于 argparse 工作:给 main 函数加上 @Gooey 装饰器后,原有命令行参数会自动映射为表单控件,程序运行时的输出则实时显示在 GUI 窗口中。

项目 内容
平台 Windows、macOS、Linux
语言 Python 3
界面基础 wxPython
许可 MIT

一行装饰器,让脚本工具从终端走进普通用户的桌面。

主要功能

  • 一行接入:在含 argparse 声明的函数上加 @Gooey 装饰器即可生成 GUI
  • 自动表单:根据参数类型自动选择输入框、下拉框、文件选择器等控件
  • 精细定制:改用 GooeyParser 可为每个参数指定控件样式与校验规则
  • 运行模式:支持完整配置、基础模式和跳过配置直接运行三种方式
  • 进度与输出:程序输出实时显示在界面中,支持进度条与剩余时间展示
  • 生命周期事件:提供启动、成功、失败等事件钩子,可动态控制界面
  • 动态校验:提交前对输入做校验,错误信息直接显示在表单上
  • 外观定制:支持自定义菜单、图标、字体与全局界面配置

适用人群

  • Python 脚本作者
  • 需要把内部工具交给非技术同事使用的开发者
  • 维护大量 argparse 命令行工具的团队
  • 希望快速做出图形界面的原型开发者

快速上手

  1. 通过 pip 安装
pip install Gooey
  1. 在 argparse 程序入口加装饰器
from gooey import Gooey

@Gooey
def main():
    # 原有 argparse 参数定义保持不变
    ...
  1. 运行脚本即弹出图形界面;需要分发给他人时可配合 PyInstaller 打包为独立可执行文件

核心优势

  • 零重写:不改动原有 argparse 逻辑,加一行装饰器即可获得界面
  • 体验友好:非技术用户通过表单即可使用脚本,不必记命令行参数
  • 功能完整:进度展示、事件控制、打包方案一应俱全

系统要求

项目 要求
语言 Python 3
操作系统 Windows、macOS、Linux
界面依赖 wxPython

注意事项

  • 依赖 wxPython:在部分环境安装 wxPython 可能需要选择预编译包或额外配置
  • 基于 argparse:程序需使用 argparse 定义参数才能自动生成表单

历史版本

排序