【问题标题】:How to fix this list index out of range error如何修复此列表索引超出范围错误
【发布时间】:2019-01-20 07:18:17
【问题描述】:

我想执行列减法。例如 [[0,2],[2,5],[3,11]] 为此我想执行 (5-2),(11-5)。然后找到具有最大差异的那个。因此,我创建了一个字典并将差异与其对一起存储。例如(5-2)的差值用0存储,(11-5)的差值用2存储。

错误是:

Traceback(最近一次调用最后一次):文件 “/home/viki/Music/keypress.py”,第 14 行,在 keypressTime(l) 文件“/home/viki/Music/keypress.py”,第 10 行,在 keypressTime 中 d = x[i+1][1] - x[i][1] IndexError: list index out of range

import operator

l = [[0,2],[2.4],[0,8],[3,9],[5,20]]

def keypressTime(x):
    dic = {}
    d = 0
    for i in range(len(x)-1):
        if i <(len(x)-1):
            d = x[i+1][1] - x[i][1]
            dic["i"] = d
    return max(dict.items(),key=operator.itemgetter(1))[0]

keypressTime(l)

【问题讨论】:

    标签: python-3.x


    【解决方案1】:

    l的变量声明有错别字。 l = [[0,2],[2.4],[0,8],[3,9],[5,20]] -> 将 2.4 改为 2,4

    而且 dict.items() 应该是 dic.items()

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-05-30
      • 2019-10-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多