2016-09-19 60 views
-1

所以我不得不将我的伪代码转换为python,但是我的输出没有按照应有的方式出现。模块化的Python输出问题

我输入40小时工作和20个工资率,但总工资没有出来(总工资应该是800)。谁能告诉我什么是错的?

BASE_HOURS = 40 
OT_MULTIPLIER = 1.5 

def main(): 
    hours_worked = int(input('Enter the number of hours worked: ')) 
    pay_rate = int(input('Enter the hourly pay rate: ')) 

    if hours_worked > BASE_HOURS: 
     calc_pay_with_OT(hours_worked, pay_rate) 
    else: 
     calc_regular_pay(hours_worked, pay_rate) 

def calc_pay_with_OT(hours, pay_rate): 
    overtime_hours = hours_worked - BASE_HOURS 

    overtime_pay = overtime_hours * pay_rate + OT_MULTIPLIER 

    gross_pay = BASE_HOURS * pay_rate + overtime_pay 

    print('The gross pay is $ '), gross_pay 

def calc_regular_pay(hours, pay_rate): 
    gross_pay = hours * pay_rate 

    print('The gross pay is $ '), gross_pay 

main() 
+0

输入的工作时数:40 输入小时工资率:20 的工资总额为$ >>>这是我的输出,但应该有$ – polskiebmw

+0

运行正常后,800并给我800我们的40和20英寸。怎么了? – holdenweb

+0

当我运行你的程序时,我得到了800美元的正确答案。 –

回答

0

print语句应改为print('The gross pay is $'+str(gross_pay))str()函数整数gross_pay转换为字符串,以便它可以在打印功能并置。

+0

非常感谢! – polskiebmw

+0

@polskiebmw如果它适合你,你能选择我的答案吗? –