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

我的首个Python程序:2021联邦个税计算器,求更简洁实现方案

2021美国联邦个人所得税计算器优化方案

核心优化思路

  • 消除重复代码:将原代码重复写了两次的计税逻辑封装为独立函数,后续修改计税规则时仅需调整一处,降低维护成本
  • 结构化税级配置:把分散在多个变量里的扣减阈值、对应税率统一存入列表,完全解耦配置和计算逻辑,后续更新税率只需要改配置项,不需要动计算代码
  • 增加容错机制:原代码输入非数字会直接崩溃,新增输入校验和异常捕获,提升使用体验
  • 补充退出逻辑:原无限循环无法正常退出,新增退出判定,输入q即可正常结束程序
  • 优化输出格式:税金保留两位小数,更符合金额类数据的展示习惯

优化后参考代码

def calculate_federal_tax(income: int) -> float:
    # 2021年联邦个税税级配置:(收入阈值, 超出阈值部分对应附加税率)
    tax_brackets = [
        (0, 0.1),
        (9950, 0.02),
        (40525, 0.1),
        (86376, 0.02),
        (164926, 0.08),
        (209426, 0.03),
        (523601, 0.02)
    ]
    total_tax = 0.0
    for threshold, rate in tax_brackets:
        total_tax += max(income - threshold, 0) * rate
    return total_tax


if __name__ == "__main__":
    print("请输入扣除所有支出后的年收入:")
    while True:
        input_str = input().strip()
        # 输入q/quit即可退出程序
        if input_str.lower() in ["q", "quit"]:
            break
        # 输入合法性校验
        try:
            annual_income = int(input_str)
        except ValueError:
            print("输入无效,请输入合法数字,或输入q退出:")
            continue
        tax = calculate_federal_tax(annual_income)
        print(f"你需要缴纳的联邦个税约为:${tax:.2f} 美元\n")
        print("尝试其他收入,或输入q退出:")

优化效果说明

  • 代码量缩减近40%,逻辑更清晰,更易读
  • 税率调整成本极低,要适配其他年份的个税规则,仅需修改tax_brackets里的配置项即可
  • 程序鲁棒性大幅提升,不会因为用户误输入直接闪退
  • 支持正常退出,不需要强制结束进程

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.18 06:54:09