Python:“你必须使用raw_input读取数据,然后将其转换”

时间:2016-03-29 09:54:22

标签: python

我正在执行下面描述的任务,但我遇到了错误:

  

编写程序以使用提示用户每小时的小时数和费率   raw_input计算总薪酬。支付小时费用   40小时以上所有工作小时的小时费率的40倍和1.5倍   小时。使用45小时和每小时10.50的速度来测试程序   (工资应为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 个答案:

答案 0 :(得分:0)

hrs = raw_input("Enter Hours:")
h = float(hrs)

float替换为上面一行中的int 我也做过这个课程,我认为这就是问题 也可以尝试在同一行中执行:

hrs = int(raw_input("Enter Hours:"))

答案 1 :(得分:0)

在我看来,您正试图在自动化测试系统中通过测试。在这种情况下,raw_input中的提示是不可接受的,请尝试将其删除。