元组错误数组格式

时间:2017-02-20 10:21:43

标签: python formatting

刚开始编程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)

它没有任何错误。

非常感谢任何帮助。

2 个答案:

答案 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)'

时收到错误{17}的原因