X19701011 2021-11-04 14:56 采纳率: 71.4%
浏览 257
已结题

一道python课习题,求解答 用switch

假设税前工资和税率如下(s代表税前工资,t代表税率):
s<1000 t=0%
1000<=s<2000 t=10%
2000<=s<3000 t=15%
3000<=s<4000 t=20%
4000<=s t=25%
编写一程序,要求用户输入税前工资额,然后用switch语句计算税后工资额。

  • 写回答

2条回答 默认 最新

  • 天元浪子 Python领域优质创作者 2021-11-04 15:05
    关注

    python3.10有了,不过不是用switch做关键字,而是match

    def get_tax(wages):
        match(wages):
            case x if x < 1000: tax = 0
            case x if 1000 <= x < 2000: tax = wages * 0.1
            case x if 2000 <= x < 3000: tax = wages * 0.15
            case x if 3000 <= x < 4000: tax = wages * 0.2
            case _: tax = wages * 0.25
        return tax
    
    get_tax(800)
    0
    get_tax(8000)
    2000.0
    get_tax(3200)
    640.0
    get_tax(1800)
    180.0
    get_tax(2500)
    375.0
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 11月17日
  • 已采纳回答 11月15日
  • 创建了问题 11月4日

悬赏问题

  • ¥15 微信小程序 用oss下载 aliyun-oss-sdk-6.18.0.min client报错
  • ¥15 ArcGIS批量裁剪
  • ¥15 labview程序设计
  • ¥15 为什么在配置Linux系统的时候执行脚本总是出现E: Failed to fetch http:L/cn.archive.ubuntu.com
  • ¥15 Cloudreve保存用户组存储空间大小时报错
  • ¥15 伪标签为什么不能作为弱监督语义分割的结果?
  • ¥15 编一个判断一个区间范围内的数字的个位数的立方和是否等于其本身的程序在输入第1组数据后卡住了(语言-c语言)
  • ¥15 Mac版Fiddler Everywhere4.0.1提示强制更新
  • ¥15 android 集成sentry上报时报错。
  • ¥15 抖音看过的视频,缓存在哪个文件