Python 值错误无法索引

Python 值错误无法索引,python,int,literals,base,Python,Int,Literals,Base,导致此错误的原因是text_文件是一个列表,您必须向该列表的引用和索引中传递一个整数。您正在传递num,该num正在迭代一个在您对其进行操作时正在更改的列表。当您将'Frogs'和'[1]'附加到列表中时,num会迭代这些值,然后尝试引用text_文件的索引'Frogs'。这会导致值错误 您可以使用: final_l = [[1, "Cats", [1]], [2, "Dogs", [1]], [3, "Frogs", [1]], [5, "ants", [1]]] 作为一种可能的解决方案,尽

导致此错误的原因是text_文件是一个列表,您必须向该列表的引用和索引中传递一个整数。您正在传递num,该num正在迭代一个在您对其进行操作时正在更改的列表。当您将'Frogs'和'[1]'附加到列表中时,num会迭代这些值,然后尝试引用text_文件的索引'Frogs'。这会导致值错误

您可以使用:

final_l = [[1, "Cats", [1]], [2, "Dogs", [1]], [3, "Frogs", [1]], [5, "ants", [1]]]

作为一种可能的解决方案,尽管我对您的最终目标非常困惑。

之所以会产生错误,是因为文本文件是一个列表,您必须将一个整数传递给该列表的引用和索引。您正在传递num,该num正在迭代一个在您对其进行操作时正在更改的列表。当您将'Frogs'和'[1]'附加到列表中时,num会迭代这些值,然后尝试引用text_文件的索引'Frogs'。这会导致值错误

您可以使用:

final_l = [[1, "Cats", [1]], [2, "Dogs", [1]], [3, "Frogs", [1]], [5, "ants", [1]]]

作为一种可能的解决方案,尽管我对您的最终目标很困惑。

这里的主要问题是您在列表中迭代,同时向列表中添加新的值,这将导致您出错,并且因为您碰巧使用了添加到此列表中的值
sl
,这些值不适合编制索引(如“青蛙”),因此,我的明显建议是为此创建一个新列表:

import copy
for num in copy.copy(sl):

请注意,列表索引从0开始。

这里的主要问题是您在列表中迭代,同时向列表中附加新值,这将导致错误,因为您碰巧使用了附加到此列表的值
sl
,这些值不适合索引(如“青蛙”),因此,我的明显建议是为此创建一个新列表:

import copy
for num in copy.copy(sl):

请注意,列表索引从0开始。

在修改列表的同时迭代
sl
,这听起来是一个很好的错误原因,类似于您发布的错误,您明白我的意思吗?在修改列表的同时迭代
sl
,这听起来是一个很好的错误原因,类似于您发布的错误,你明白我的意思了吗?你是对的。谢谢我认为这是最容易理解的方式,你是对的。谢谢我认为这是最可以理解的方式对不起。。我正试图得到这样一个列表:[1,“猫”[1]],[2,“狗”,[1]],[3,“青蛙”,[1]],[5,“蚂蚁”,[1]]抱歉。。我试图得到这样一个列表:[1,“猫”[1]],[2,“狗”,[1]],[3,“青蛙”,[1]],[5,“蚂蚁”,[1]]