速度=时间距离python代码分割语法错误

时间:2015-03-19 18:38:45

标签: python

from datetime import datetime

start = input("Press enter to start")
starttime =(datetime.now())
stop = input("Press enter to stop")
stoptime =(datetime.now())
dist1 = 0
dist2 = input("enter dist2:")
time = stoptime-starttime
print(time)
distance = int(dist2) - dist1
print(distance)
speed = int(distance)% time
print(speed)

第二行最后一行出现语法错误

TypeError: unsupported operand type(s) for %: 'int' and 'datetime.timedelta'

请帮我解决这个问题,以便我可以在秒表计时器的帮助下计算速度。

3 个答案:

答案 0 :(得分:0)

来自Docs:

在你的行中:

speed = int(distance) % time

您正在尝试在intdatetime对象上使用模运算符,这是使用.now()方法获得的。

如果您想将时间转换为秒,则应使用total_seconds()方法执行此操作。

time = (stoptime - starttime).total_seconds()

这将返回您可以在您的部门中使用的整数,或者当前的模数

答案 1 :(得分:0)

您是否尝试过使用time模块? (注意:如果您输入的speed位于m/s),则distance将为metres

import time
print time.time()
start = input("Press enter to start: ")
starttime =time.time()
stop = input("Press enter to stop")
stoptime =time.time()
dist1 = 0
dist2 = input("enter dist2:")
time = stoptime-starttime
print(time)
distance = int(dist2) - dist1
print(distance)
speed = int(distance)/ time
print(speed)

答案 2 :(得分:-1)

打印(“速度=距离/时间”)

#1) 首先我们将距离输入放入一个变量中 d = 输入(“距离是多少?(英里)”)

#2) 然后我们必须替换输入的时间,它以小时数为单位 t = input ("几点了?(小时):")

#3) 代入两个输入后,我们必须计算以公里/小时为单位的平均速度,我们通过除以 500 和 10 来计算 输入(“以每小时公里为单位的速度:”)

#4) 最后,我们用一个完整的句子来结束等式,这也将打印输出 打印(“要在 10 小时内行驶 500 公里,您必须以 50.0 公里/小时的速度行驶”)