我为措辞不佳的标题道歉,但我对Python和编码很新。我假设我的问题很简单,但我还没能找到我想要的帮助。这是我现在的代码:
for i in xList:
dif == (xList[i+1] - i)
我要做的是获取列表中的所有值,找到每个值之间的差异,然后找出平均差异。请提供任何帮助。谢谢你的时间!
答案 0 :(得分:0)
平均差异是差异之和除以计数。
count = len(xList) - 1
total_diff = 0
for i in range(count):
a = xList[i]
b = xList[i+1]
total_diff += abs(a - b) # absolute value, so negatives don't cancel positives
print(total_diff / count)
答案 1 :(得分:0)
zip
可以轻松浏览列表,查看每对连续的元素:
diff_sum = 0
for a, b in zip(xlist, xlist[1:]):
diff_sum += abs(b-a)
您甚至可以使用生成器表达式和内置sum
:
diff_sum = sum(abs(b-a) for a,b in zip(xlist, xlist[1:]))
现在除以列表的长度减去1:
ave_diff = diff_sum / (len(xlist)-1)
(当然,单个元素列表会给你除以零,所以你要防范它。)