求平均速度

时间:2018-11-06 11:09:50

标签: arrays for-loop velocity

我正在尝试使用每个点的平均速度来查找位置的速度。我的位置和时间被放置在一个数组中,并且我正在使用for循环来查找每个点的速度。我正在使用以下公式:

for i,j in zip(range(len(l1)),range(len(t))):
    v1.append((l1[i+1]-l1[i])/(t[j+1]-t[j]))

但是,使用公式时,错误列表索引超出范围。我怎样才能解决这个问题?感谢您的任何答复。

1 个答案:

答案 0 :(得分:0)

此处len(l1)len(t)与获取每个点的位置和时间相同。因此,仅需要一个循环变量。另外,您正在使用l1[i+1],这就是发生错误的原因。请使用for i in range(len(l1)-1):v1.append((l1[i+1]-l1[i])/(t[i+1]-t[i]))

如果len(l1)为4,则循环将在i = 0,1,2时运行 但是在您的代码中它将针对i = 0、1、2、3运行,对于i = 3,l1 [i + 1]将导致错误。