Python 3 - 实现计算小时工资和工作小时数的函数

时间:2015-10-09 22:51:03

标签: python python-3.x

我正在研究一个问题,我需要创建一个带有两个参数的程序:小时工资和员工工作的小时数。超过40小时的任何时间都是加班费,应该以 1.5 倍的速度支付。

到目前为止,我已经提出以下建议:

def wage(hourly, hours)
if hours > 40
#hours over 40 earns overtime rate

应该出现以下内容:

   >>> wage(10, 10) 
   100

   >>> wage(10, 35) 
   50

   >> wage(10,45)
   475

该函数应根据程序的编写方式输出和计算值。我只是不确定如何使用用户定义的函数实现正确的迭代,以便输出正确的值。

作为参考,继承了原来的问题:

实施功能 工资() 这需要两个参数:每小时一次 工资和员工上次工作的小时数 周。您的功能应该计算并返回员工 工资。任何超过40小时的工作时间都是加班费,应该支付 是正常小时工资的1.5倍。确保添加一个 Docstring告诉用户程序是如何工作的。

2 个答案:

答案 0 :(得分:1)

每小时乘以小时数,计算加班时间并将其加到工资上。由于您已经添加了正常的小时费率,因此您需要增加0.5 *加班费。

def wage(hourly, hours):
    salary = hourly * hours
    if hours > 40:
        overtime = 40 - hours
        salary += 0.5 * overtime
    return salary

答案 1 :(得分:1)

即使我坚信你应该自己做,因为如果你要使用Python,你应该知道这件事,这就是答案:

def wage(hourly,hours):
        if hours > 40:
                payment = 40 * hourly  # Standard Payment until 40 Hours
                payment = payment + hourly * (hours-40) * 1.5  # + the rest which has more rate
                return payment
        else:
                return hours * hourly  # Otherwise Normal Payment

你需要找到工作时间超过40小时的人数。这些人的费率是1.5。所以,前40个小时有标准费率。这就是为什么你需要从第一个案例中减去前40个小时的原因。