回答此问题可获得 20 贡献值,回答如果被采纳可获得 50 分。
<p>我的家庭作业是写一个Python程序,根据每小时工资和工作小时数计算工人的工资。到目前为止,我已经找到了以下代码</p>
<pre><code>#Function
def calculatePay(rateHour,nHours):
if nHours <= 40:
pay = rateHour * nHours
elif nHours < 60:
pay = (rateHour * 40) + ((nHours - 40) * (rateHour * 1.5))
else:
pay = (rateHour * 40) + (20 * (rateHour * 1.5)) + ((nHours - 60) * (rateHour * 2.0))
return pay
#Main Code
pay1 = calculatePay(30, 20)
print('You worked ', nHours, 'hours at a rate of ', ratehour, 'per hour, you will be paid $ ', pay1)
print()
pay2 = calculatePay(15.50, 50)
print('You worked ', nHours, 'hours at a rate of ', ratehour, 'per hour, you will be paid $ ', pay2)
print()
pay3 = calculatePay(11, 70.25)
print('You worked ', nHours, 'hours at a rate of ', ratehour, 'per hour, you will be paid $ ', pay3)
print()
rateHour = int(input('Enter the rate per hour: '))
nHours = int(input('Enter the number of hours worked: '))
pay4 = calculatePay(rateHour,nHours)
print('You worked ', nHours, 'hours at a rate of ', ratehour, 'per hour, you will be paid $ ', pay4)
print()
</code></pre>
<p>当我运行它时,我得到以下错误</p>
<pre><code>Traceback (most recent call last):
File "C:\Users\John\Desktop\Python Programming\JohnLissandrello_Homework3.py", line 15, in <module>
print('You worked ', nHours, 'hours at a rate of ', ratehour, 'per hour, you will be paid $ ', pay1)
NameError: name 'nHours' is not defined
</code></pre>
<p>我相信这是因为我试图在主代码中使用局部变量rateHour和nHours</p>
<p>如何将这两个变量从函数传递到主代码中,以便将rateHour和NHhours与计算的工资一起输出</p>