这是代码如果环路 - 索引超出范围
for i in np.arange(len(tupel)):
if tupel[i][0]+1 == tupel[i+1][0] and tupel[i][1] != 0:
pre.append((tupel[i][1]))
else:
means.append(pre)
pre = []
前和手段都只是两个列表。我有另一个列表:“tupel”。它看起来像
[(0, 10), (1, 16), (2, 0), (3, 0), (4, 0), (5, 0), (6, 0), (7, 0), (8, 11), (9, 18), (10, 4), (11, 0), (12, 0), (13, 0), (14, 0), (15, 0), (16, 0), (17, 0), (18, 12), (19, 16), (20, 1)]
所有第2个元素为零的图形都应该被“!= 0”参数截断。如您所见,非零值(第二个元素)存在于某些区间中。现在我想要做的是计算以下项目的第二个元素的总和的平均值。
例如,
(0,10),(1,16)具有非零的第二元素。我想要的意思是第一个元素和第二个元素的意思。将是:(1,26/2)。
(2,0),(3,0),(4,0),..应该被切断。因为第二个元素是零。 (8,11),(9,18),(10,4)应该是:(27/3,33/3)。
要检查第二个元素是否为非零的下列项目是“下一个整数”,我创建了循环(上面的代码)。但我得到的错误:
IndexError: list index out of range
我如何检查列表中的下列项目不超过指数的范围是多少?
在此先感谢。
可能的问题是'[i + 1]' - 您使用'索引超出范围'。你需要'np.arange(len(tupel)-1):' – furas
非常感谢。它修复了它! – rfaenger