Python函数:创建工资函数时出现加班错误

我目前正在尝试使用
python 3.50创建一个工资函数,如下所示:用户输入每小时支付为“x”,小时工作为“y”.我正在尝试实施一个加班部分,如果工作时间大于40,那么这个额外工作时间的工资是1.5倍.我正在输入工资(10,45)并且当我显然应该返回475时返回525,任何人都可以帮我挑选我的错误吗?非常感谢帮助,感谢您提前的时间.

def wage(x, y):

    if y > 40:

        ehours = y - 40
        overtime = x * 1.5 * ehours
        return x * y + overtime

    else:
        return x * y

最佳答案 好吧,他们应该只支付0.5额外费用(不是额外的1.5),所以你的代码应该是这样的:

def wage(x, y):
  if y > 40:
      ehours = y - 40
      overtime = x * 0.5 * ehours
      return x * y + overtime
  else:
      return x * y

或者,执行此操作可能更容易(但不一定更好):

def wage(x, y):
    return x * y + (0.5*x*max(y-40, 0))
点赞