编写一个程序,使用两个函数来计算员工的每周薪水。一个函数计算工资。其他功能将打印薪水。如果员工加班-他的加班工资应该是时间的一半。假设没有税。用代码编写适当的注释。不要使用全局变量。 这是我到目前为止的内容:
def payrate():
hours = int(input('How many hours did you work?\n'))
rate = int(input('What is your hourly rate?\n'))
if hours <= 40:
total = hours * rate
else:
total = 40 * rate + (hours - 40) * (1.5 * rate)
def salary():
for total in payrate():
print('Your weekly salary is $%d' %total)
return payrate(total)
salary()
我知道这是不对的,但是我是一个初学者,正在学习中
答案 0 :(得分:1)
这应该有效:
def payrate():
hours = int(input('How many hours did you work?\n'))
rate = int(input('What is your hourly rate?\n'))
if hours <= 40:
total = hours * rate
else:
total = 40 * rate + (hours - 40) * (1.5 * rate)
return total
def salary():
total = payrate()
print('Your weekly salary is $%d' %total)
salary()
要在函数中使用“局部变量”,您必须像这样返回它(使用 return 关键字):
return local_variable
要从另一个函数接收它,可以在第二个函数中调用第一个函数,如下所示:
recieved_local_variable = first_function()
答案 1 :(得分:1)
在Python中,您可以将参数传递给def ...()内部的函数:例如,您可以将变量rate和hours传递给函数payrate,以返回计算出的总数:
def payrate(rate, hours):
...
return total
如果您想要一个名为薪金的功能,只打印出payrate函数的结果,则可以执行以下操作:
def salary(hours, rate):
print(payrate(hours, rate))
上面的函数调用payrate函数并打印返回值。
然后只需使用变量“ hours”和“ rate”调用薪水函数。
salary(hours, rate)
希望有帮助
答案 2 :(得分:0)
干得好,您非常亲密。您的薪水函数需要从payrate函数接收总薪水,而payrate函数需要将总薪水返回薪水,以便可以打印出来。这段代码对我来说很好:
def payrate():
hours = int(input('How many hours did you work?\n'))
rate = int(input('What is your hourly rate?\n'))
if hours <= 40 :
total = hours * rate
else :
total = 40 * rate + (hours - 40) * (1.5 * rate)
return total
def salary():
pay = payrate()
print('Your weekly salary is $%d' % pay)
salary()
我希望这对您有帮助