IndexError:列表索引超出范围 - python 错误

Posted

技术标签:

【中文标题】IndexError:列表索引超出范围 - python 错误【英文标题】:IndexError: list index out of range - python error 【发布时间】:2020-09-04 23:13:00 【问题描述】:

我有一个巨大的列表列表(有 518 个列表,每个列表都有不同数量的子列表,但我无法上传所有列表,因为我超出了字数限制,所以希望它可以使用这个示例)

fall_3_list = [[['CS322', 'CS312', 'CS300', 'GER', 'FREE'], ['FREE', 'CS300', 'CS312', 'CS322', 'GER']], [['', '', 'CS300', 'FREE', 'CS312'], ['', 'FREE', 'CS300', '', 'CS312'], ['', 'FREE', 'CS300', '', 'CS312']], [['CS322', 'GER', 'GER', 'CS321', 'STAT205']], [['FREE', 'CS322', 'STAT205', 'GER', 'CS312'], ['FREE', 'CS312', 'CS322', 'GER', 'STAT205'], ['GER', 'FREE', 'CS312', 'CS322', 'STAT205'], ['CS322', 'FREE', 'CS312', 'GER', 'STAT205']], [['FREE', 'CS306', 'CS310', 'GER', 'FREE'], ['CS306', 'CS310', 'GER', 'FREE', 'FREE'], ['CS306', 'CS310', 'GER', 'FREE', 'FREE'], ['CS306', 'GER', 'FREE', 'CS310', 'GER'], ['CS310', 'CS306', 'FREE', 'GER', 'GER'], ['CS310', 'CS306', 'FREE', 'GER', 'FREE'], ['FREE', 'CS306', 'GER', 'CS310', 'FREE'], ['FREE', 'CS306', 'GER', 'CS310', 'FREE']], [['CS321', 'CS300', 'CS306', 'GER', 'CS325']], [['CS310', 'CS300', 'CS450', 'CS312', 'FREE']], [['CS310', 'CS322', 'GER', 'GER', ''], ['CS310', 'CS322', 'GER', 'GER', '']], [['CS322', 'CS300', 'CS306', 'CS321', 'STAT205']], [['FREE', 'CS300', 'CS306', 'STAT205', 'CS322'], ['CS300', 'CS306', 'CS322', 'STAT205', 'FREE'], ['CS300', 'CS306', 'CS322', 'STAT205', 'FREE'], ['CS306', 'CS300', 'CS322', 'STAT205', 'FREE'], ['CS306', 'CS300', 'CS322', 'STAT205', 'FREE'], ['CS322', 'CS306', 'CS300', 'FREE', 'STAT205'], ['CS322', 'CS300', 'CS306', 'FREE', 'STAT205']], [['CS310', 'FREE', 'CS312', '', 'CS325']], [['CS206', 'CS306', 'CS322', 'FREE', 'CS325']], [['FREE', 'FREE', 'GER', '', 'CS321'], ['FREE', '', 'FREE', 'CS321', 'GER'], ['FREE', '', 'FREE', 'CS321', 'GER'], ['FREE', '', 'FREE', 'CS321', 'GER'], ['FREE', '', 'FREE', 'CS321', 'GER'], ['', 'FREE', 'FREE', 'GER', 'CS321'], ['', 'FREE', '', 'GER', 'CS321'], ['', 'FREE', '', 'GER', 'CS321'], ['FREE', '', 'FREE', 'GER', 'CS321'], ['FREE', '', 'FREE', 'GER', 'CS321'], ['FREE', '', 'FREE', 'GER', 'CS321']], [['MATH220', 'CS450', 'CS300', 'FREE', 'FREE']], [['FREE', 'CS312', 'MATH220', 'CS310', ''], ['FREE', 'CS312', 'MATH220', 'CS310', ''], ['FREE', 'CS312', 'MATH220', 'CS310', ''], ['MATH220', 'FREE', 'CS312', 'CS310', '']], [['', 'FREE', 'CS322', 'CS321', 'FREE'], ['', 'FREE', 'CS321', 'CS322', ''], ['', 'FREE', 'CS321', 'CS322', ''], ['', 'FREE', 'CS322', 'CS321', 'FREE'], ['FREE', '', 'FREE', 'CS322', 'CS321'], ['FREE', '', 'FREE', 'CS322', 'CS321'], ['FREE', '', 'FREE', 'CS322', 'CS321']], [['CS450', '', 'CS312', 'GER', 'CS321']], [['CS306', 'CS321', 'STAT205', 'CS310', '']], [['', 'FREE', 'CS312', 'CS306', 'STAT205']], [['FREE', 'CS312', 'GER', 'CS322', 'GER'], ['CS312', 'FREE', 'CS322', 'GER', 'GER'], ['CS312', 'FREE', 'CS322', 'GER', 'GER'], ['CS322', 'FREE', 'CS312', 'GER', 'FREE'], ['CS322', 'FREE', 'CS312', 'GER', 'FREE'], ['CS322', 'FREE', 'CS312', 'GER', 'FREE'], ['CS322', 'FREE', 'CS312', 'GER', 'FREE'], ['CS322', 'FREE', 'CS312', 'GER', 'FREE'], ['CS322', 'FREE', 'CS312', 'GER', 'FREE'], ['CS322', 'FREE', 'CS312', 'GER', 'FREE'], ['CS322', 'FREE', 'CS312', 'GER', 'FREE'], ['CS322', 'FREE', 'CS312', 'GER', 'FREE'], ['CS322', 'FREE', 'CS312', 'GER', 'FREE'], ['CS322', 'FREE', 'CS312', 'GER', 'FREE'], ['CS322', 'FREE', 'CS312', 'FREE', 'GER'], ['CS322', 'FREE', 'CS312', 'FREE', 'GER'], ['CS322', 'FREE', 'CS312', 'FREE', 'GER'], ['CS322', 'FREE', 'CS312', 'GER', 'FREE'], ['CS322', 'FREE', 'CS312', 'GER', 'FREE'], ['CS322', 'FREE', 'CS312', 'GER', 'FREE'], ['CS322', 'FREE', 'CS312', 'GER', 'FREE'], ['CS322', 'FREE', 'CS312', 'GER', 'FREE']], [['FREE', 'FREE', '', 'FREE', 'CS312'], ['FREE', 'FREE', '', 'FREE', 'CS312']], [['FREE', 'FREE', 'GER', 'CS325', 'STAT205'], ['FREE', 'FREE', 'GER', 'CS325', 'STAT205']], [['CS306', 'MATH220', 'FREE', 'CS322', 'GER']], [['CS322', 'CS306', 'CS300', 'GER', 'CS321'], ['CS322', 'CS306', 'CS300', 'GER', 'CS321'], ['CS322', 'CS306', 'CS300', 'GER', 'CS321'], ['CS322', 'CS306', 'CS300', 'GER', 'CS321'], ['CS322', 'CS306', 'CS300', 'GER', 'CS321'], ['CS322', 'CS306', 'CS300', 'GER', 'CS321'], ['GER', 'CS300', 'CS306', 'CS321', 'CS322'], ['GER', 'CS306', 'CS300', 'CS322', 'CS321'], ['GER', 'CS306', 'CS300', 'CS322', 'CS321'], ['GER', 'CS300', 'CS306', 'CS322', 'CS321'], ['GER', 'CS300', 'CS306', 'CS321', 'CS322'], ['GER', 'CS300', 'CS306', 'CS321', 'CS322'], ['CS300', 'CS306', 'GER', 'CS322', 'CS321'], ['CS322', 'CS306', 'CS300', 'CS321', 'GER'], ['CS322', 'CS306', 'CS300', 'CS321', 'GER']], [['FREE', 'CS300', 'CS306', 'GER', ''], ['FREE', 'CS306', 'CS300', 'GER', '']], [['CS310', 'CS306', 'CS300', 'CS322', 'CS312'], ['CS300', 'CS306', 'CS322', 'CS310', 'CS312']], [['FREE', 'CS322', 'STAT205', 'CS310', 'FREE'], ['CS322', 'FREE', 'STAT205', 'CS310', 'FREE']], [['CS450', 'CS300', 'STAT205', 'CS310', 'GER']], [['CS322', 'FREE', 'CS450', 'CS321', 'CS325'], ['CS322', 'FREE', 'CS450', 'CS321', 'CS325'], ['CS322', 'FREE', 'CS450', 'CS321', 'CS325']], [['CS300', 'CS310', 'GER', 'STAT205', 'MAJOR']], [['FREE', 'FREE', 'FREE', '', 'GER'], ['', '', '', 'FREE', 'GER']], [['FREE', 'CS206', '', 'GER', 'CS321']], [['CS312', 'GER', 'STAT205', 'CS325', ''], ['', 'CS312', 'GER', 'CS325', 'STAT205']], [['FREE', 'CS312', 'CS310', 'ENG204', 'GER']], [['CS450', 'CS306', 'FREE', 'CS310', 'FREE']], [['CS322', 'FREE', 'MATH220', 'CS321', 'CS325']], [['CS206', 'CS312', 'CS306', 'CS322', 'FREE']], [['MATH220', 'CS306', 'CS300', 'GER', 'CS321']], [['FREE', 'GER', 'FREE', 'GER', 'CS325'], ['FREE', 'GER', 'FREE', 'GER', 'CS325'], ['FREE', 'GER', 'FREE', 'GER', 'CS325'], ['FREE', 'FREE', 'GER', 'GER', 'CS325']], [['STAT205', 'FREE', 'CS312', 'CS310', 'GER'], ['STAT205', 'FREE', 'CS312', 'CS310', 'GER'], ['STAT205', 'FREE', 'CS312', 'CS310', 'GER'], ['FREE', 'CS312', 'CS310', 'STAT205', 'GER'], ['CS312', 'FREE', 'STAT205', 'CS310', 'GER']], [['CS322', 'CS312', 'CS310', 'CS300', 'GER']], [['CS450', 'CS306', 'CS321', 'STAT205', 'GER']], [['CS450', 'CS300', 'GER', 'CS322', 'CS306']], [['CS310', 'FREE', 'CS322', 'GER', 'GER'], ['CS310', 'FREE', 'CS322', 'GER', 'GER'], ['CS310', 'CS322', 'GER', 'FREE', 'GER'], ['CS322', 'FREE', 'CS310', 'GER', 'FREE']], [['CS450', 'CS300', 'GER', 'CS310', 'FREE']], [['CS310', 'CS306', 'CS450', 'ENG204', 'CS312'], ['CS310', 'CS450', 'CS306', 'ENG204', 'CS312']], [['CS206', 'CS312', 'CS310', 'CS306', 'FREE']], [['CS306', 'CS450', 'CS312', 'GER', '']], [['CS310', 'FREE', 'CS300', 'CS321', '']], [['FREE', 'CS450', '', 'CS321', 'STAT205']], [['', 'FREE', '', 'CS321', 'STAT205'], ['', 'FREE', 'FREE', 'CS321', 'STAT205'], ['FREE', 'FREE', '', 'CS321', 'STAT205']], [['', 'FREE', 'CS322', 'CS321', 'FREE'], ['', 'FREE', 'CS321', 'CS322', ''], ['', 'FREE', 'CS321', 'CS322', ''], ['', 'FREE', 'CS322', 'CS321', 'FREE'], ['FREE', '', 'FREE', 'CS322', 'CS321'], ['FREE', '', 'FREE', 'CS322', 'CS321'], ['FREE', '', 'FREE', 'CS322', 'CS321']], [['MATH220', 'FREE', 'CS306', 'CS325', 'FREE'], ['MATH220', 'FREE', 'CS306', 'CS325', 'FREE']], [['STAT205', 'CS322', 'MATH220', 'GER', 'FREE']], [['FREE', 'GER', 'CS310', 'CS312', 'FREE'], ['FREE', 'CS310', 'GER', 'CS312', 'GER'], ['FREE', 'CS312', 'CS310', 'FREE', 'GER'], ['CS312', 'CS310', 'FREE', 'FREE', 'GER'], ['CS312', 'CS310', 'GER', 'FREE', 'GER'], ['FREE', 'CS312', 'GER', 'CS310', 'FREE'], ['CS310', 'FREE', 'CS312', 'GER', 'FREE'], ['CS310', 'CS312', 'FREE', 'GER', 'FREE'], ['CS310', 'CS312', 'FREE', 'GER', 'FREE'], ['CS310', 'FREE', 'CS312', 'GER', 'GER'], ['CS312', 'FREE', 'CS310', 'GER', 'FREE'], ['FREE', 'CS312', 'CS310', 'GER', 'FREE']], [['', '', 'FREE', 'CS321', 'CS312'], ['', 'FREE', 'CS312', 'CS321', 'FREE'], ['FREE', 'CS312', '', 'CS321', ''], ['FREE', 'FREE', 'CS312', '', 'CS321']], [['CS310', 'FREE', 'STAT205', 'GER', '']], [['CS300', 'CS306', 'FREE', 'GER', 'STAT205'], ['CS300', 'CS306', 'GER', 'FREE', 'STAT205'], ['CS306', 'CS300', 'GER', 'FREE', 'STAT205']], [['CS312', 'ENG204', 'CS450', 'CS310', 'FREE']], [['FREE', 'CS300', '', 'CS321', 'STAT205'], ['FREE', 'CS300', '', 'CS321', 'STAT205']], [['FREE', 'MATH220', 'CS306', 'GER', ''], ['CS306', '', 'FREE', 'MATH220', 'GER']], [['FREE', 'CS312', 'GER', 'CS325', 'STAT205'], ['FREE', 'STAT205', 'CS325', 'GER', 'CS312']], [['CS322', 'CS306', 'CS450', '', 'CS321']], [['CS312', 'FREE', 'GER', 'CS322', ''], ['FREE', 'CS312', 'GER', 'CS322', ''], ['CS312', 'CS322', 'GER', 'FREE', ''], ['CS312', 'CS322', 'GER', 'FREE', ''], ['CS312', 'CS322', 'GER', 'FREE', ''], ['FREE', 'CS322', 'GER', 'CS312', ''], ['FREE', '', 'CS322', 'GER', 'CS312'], ['GER', 'CS312', '', 'CS322', 'FREE'], ['GER', 'CS312', '', 'CS322', 'FREE'], ['', 'FREE', 'CS312', 'GER', 'CS322'], ['CS322', '', 'FREE', 'GER', 'CS312'], ['', 'FREE', 'CS312', 'GER', 'CS322'], ['FREE', '', 'CS312', 'CS322', 'GER'], ['CS322', '', 'FREE', 'GER', 'CS312'], ['', 'FREE', 'CS312', 'CS322', 'GER'], ['GER', 'CS312', '', 'FREE', 'CS322'], ['GER', 'CS312', '', 'FREE', 'CS322']], [['CS306', 'FREE', '', 'CS322', 'CS321'], ['CS306', 'FREE', '', 'CS322', 'CS321'], ['CS306', 'FREE', '', 'CS321', 'CS322'], ['CS322', '', 'CS306', 'FREE', 'CS321'], ['CS322', '', 'CS306', 'FREE', 'CS321'], ['', 'FREE', 'CS306', 'CS322', 'CS321'], ['', 'FREE', 'CS306', 'CS321', 'CS322'], ['CS322', 'FREE', 'CS306', '', 'CS321']]]

我想要做的是像这样获取每个列表的第一个子列表:

combination_fall_3 = [item[0] for item in fall_3_list]

但我不断收到同样的错误:

combination_fall_3 = [item[0] for item in fall_3_list] IndexError: 列表索引超出范围

但是对于我拥有的其余列表,我有 15 个看起来像 fall_3_list 的列表,这不会发生。当然,它们都有不同的长度,而不是 518,但我使用完全相同的代码。我不明白为什么会出现这个错误,因为我之前没有定义combination_fall_3 的长度(以防它是一个错误,因为我给了它更小的长度),我只是要求添加每个列表的第一个子列表。

【问题讨论】:

fall_3_list 的元素之一必须为空。 你的意思是空字符串还是空子列表? @丹尼尔沃克 空的意思是里面没有元素,很像[]。在这种情况下,item[0] 访问尝试将失败。 【参考方案1】:

这是因为您的某些列表中没有项目,item[0] 将不存在。

要诊断此类错误,您必须查看您使用的索引。在引发错误的行上,您只尝试“索引”(获取)1 个列表的元素:item[0]。如果错误然后报告“列表索引超出范围”,则表示该列表中的元素 0 不存在。

你可以像这样解决这个问题:

combination_fall_3 = [item[0] for item in fall_3_list if item]

如果子列表 item 为空,则仅计算为 False

【讨论】:

以上是关于IndexError:列表索引超出范围 - python 错误的主要内容,如果未能解决你的问题,请参考以下文章

Python:IndexError:列表索引超出范围

csv,IndexError:列表索引超出范围

IndexError:列表索引超出范围(对象检测)

IndexError:列表索引超出范围。无法理解问题出在哪里?

IndexError:列表索引超出范围(Python)

使用 TensorFlow 的“IndexError:列表索引超出范围”错误