You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用PySimpleGUI实现会员费用计算功能?

给PySimpleGUI的单选按钮/复选框赋值计算会员总费用

核心思路是:先给每个选项绑定对应的费用数值,在用户触发计算操作时,获取选中的选项并累加对应费用,最后用弹窗展示总金额。

1. 核心实现步骤

单选按钮(固定会员等级费用)

单选按钮是互斥选择(比如不同会员等级),可以用字典把单选按钮的key和对应费用做映射,之后通过values[key]判断选中状态,取出对应基础费用。

复选框(可选增值服务费用)

复选框是多选,同样用字典映射key和费用,循环检查每个复选框的选中状态,累加选中项的费用。

2. 完整示例代码

import PySimpleGUI as sg

# 预定义会员等级对应的费用
membership_costs = {
    '-SILVER-': 199,   # 银卡
    '-GOLD-': 399,     # 金卡
    '-DIAMOND-': 699   # 钻石卡
}

# 预定义增值服务对应的费用
extra_service_costs = {
    '-GYM-': 50,       # 健身
    '-SPA-': 80,       # SPA
    '-CAR_WASH-': 30   # 洗车
}

# 搭建GUI布局
layout = [
    [sg.Text('选择会员等级')],
    [sg.Radio('银卡(199元/月)', 'MEMBER_GROUP', key='-SILVER-', default=True)],
    [sg.Radio('金卡(399元/月)', 'MEMBER_GROUP', key='-GOLD-')],
    [sg.Radio('钻石卡(699元/月)', 'MEMBER_GROUP', key='-DIAMOND-')],
    [sg.Text('可选增值服务')],
    [sg.Checkbox('健身服务(50元/月)', key='-GYM-')],
    [sg.Checkbox('SPA服务(80元/月)', key='-SPA-')],
    [sg.Checkbox('洗车服务(30元/月)', key='-CAR_WASH-')],
    [sg.Button('计算总费用'), sg.Button('退出')]
]

window = sg.Window('会员费用计算器', layout)

# 事件循环
while True:
    event, values = window.read()
    if event == sg.WIN_CLOSED or event == '退出':
        break
    if event == '计算总费用':
        # 计算基础会员费
        base_cost = 0
        for key in membership_costs:
            if values[key]:
                base_cost = membership_costs[key]
                break
        
        # 计算增值服务费
        extra_cost = 0
        for key in extra_service_costs:
            if values[key]:
                extra_cost += extra_service_costs[key]
        
        # 总费用
        total_cost = base_cost + extra_cost
        # 弹窗展示结果
        sg.popup(f'会员总费用:{total_cost}元/月', title='计算结果')

window.close()

3. 新手必看注意点

  • 单选按钮的第二个参数(示例里的'MEMBER_GROUP')是组标识,同一组的单选按钮只能选一个,不能省略或写错。
  • 字典里的key必须和布局中单选/复选框的key完全一致(包括大小写、符号),否则无法匹配到对应费用。
  • 要扩展选项时,只需在字典中添加新的key-费用对,再在布局里加对应的控件即可,无需修改计算逻辑。

内容的提问来源于stack exchange,提问作者czupppy1111

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.05 22:40:56