此问题在此处已有答案:
How can I read inputs as numbers?(10个答案)
七年前就关门了。
我正在做下面描述的任务,但我遇到了一个错误:
编写一个程序,使用raw_input来提示用户输入小时数和每小时的工资,以计算总工资。工作时间不超过40小时的按小时工资支付,工作时间超过40小时的按小时工资的1.5倍支付。使用45小时和每小时10.50的工资来测试程序(pay应该是498.75)。你应该使用raw_input来读取一个字符串,并使用float()将字符串转换为一个数字。
下面是我的代码:
hrs = raw_input("Enter Hours:")
h = float(hrs)
rateinput=raw_input("enter hourly rate:")
rate=float(rateinput)
if h > 40:
remainderhours=h-40
h=40
remainderrate=10.50*1.5
else:
remainderhours = 0
normalpay= float ( h * rate)
overtimepay = remainderhours * remainderrate
pay = normalpay + overtimepay
grosspay= pay
print grosspay
- 我得到了498.75的正确答案。* 但是它不会让我通过赋值,因为方法错误
You must read the data using raw_input and then convert it
出现了。我一直试图修复它一段时间,但我对我做错了什么感到困惑。有人能对我的问题提出一些建议吗?任何帮助都是感激的。
2条答案
按热度按时间zvokhttg1#
将上一行中的
float
替换为int
。我也上过这门课,我认为这就是问题所在。
也可以尝试在同一行中这样做:
busg9geu2#
在我看来,你试图通过自动测试系统中的测试。在这种情况下,
raw_input
中的提示是不可接受的,请尝试删除它们。