带有Python输入的TypeError不支持的操作数

时间:2018-05-27 22:29:30

标签: python string input typeerror

我必须通过收集客户输入,从输入计算成本,然后显示结果来创建租车成本估算器。我坚持的部分是收集他们驾驶的总里程的里程表读数。它给了我一个错误:

Traceback (most recent call last):
  File "rental_car.py", line 39, in 
    totalMiles = odoEnd - odoStart
TypeError: unsupported operand type(s) for -: 'str' and 'str'

我将代码上传到Pastebin,并希望有人可以就如何修复它给我一些见解。谢谢!

1 个答案:

答案 0 :(得分:-1)

将所有输入转换为数字形式。

例如,将intfloat应用于输入字符串:

daysRented = int(input("Number of Days Rented:\n"))
weeksRented = int(input("Number of Weeks Rented:"))
odoStart = float(input("Starting Odometer Reading:\n"))
odoEnd = float(input("Ending Odometer Reading:\n"))

docs中明确指出了默认行为:

  

<强>输入([提示])

     

如果存在prompt参数,则将其写入标准输出   没有尾随换行符。然后该函数从输入中读取一行,   将其转换为字符串(剥离尾随换行符),然后返回。