刚开始编程python。我有一个问题,这个错误IndexError:元组索引超出范围。这个应用程序有点读取大量的日志文件。
我的示例列表是:
arrline = ['Array0', 'Array1', 'Array2', 'Array3', 'Array4', 'Array5', 'Array6:', 'Array7', 'Array8', 'Array9', 'Array10', 'Array11', 'Array12', 'Array13', 'Array14', 'Array15', 'Array16']
当我使用
时tmp1 = '{0}{1}{12}{5}{6}{17}'.format(*arrline)
print tmp1
我最终得到IndexError: tuple index out of range
。
但是当我尝试
时tmp1 = '{0}{1}{2}{3}{4}{5}'.format(*arrline)
它没有任何错误。
非常感谢任何帮助。
答案 0 :(得分:2)
IndexError:元组索引超出范围。
此错误试图告诉您,您正在尝试从元组中获取一个不在定义元组的索引范围内的对象。您尝试打印的{17}
不存在!
但是由于元组中的16个项目,可以执行请求{5}
之前的项目的代码!
尝试向您的元组添加其他项目,或将{17}
更改为{16}
答案 1 :(得分:0)
因为你的数组包含17个元素但根据array indexing
它是0-16
,所以数组索引总是从0开始,所以当你使用{17}时,这个索引不可用你从0开始计数,这就是您在tmp1 = '{0}{1}{12}{5}{6}{17}'.format(*arrline)'