List 请回答这个问题。这是一个重复的

List 请回答这个问题。这是一个重复的,list,List,删除此问题。此处发布。问题在于,您在对列表进行迭代时正在对其进行操作。您最好创建结果列表的筛选副本: result=[['10'], ['5'], ['6'], ['12'], ['9'], ['10'], ['5', '9', '10'], ['5', '10'], ['13'], ['9', '10'], ['1']] filtered_result = [] for i in result: if len(i)>2: filtered_result.app

删除此问题。此处发布。

问题在于,您在对列表进行迭代时正在对其进行操作。您最好创建结果列表的筛选副本:

result=[['10'], ['5'], ['6'], ['12'], ['9'], ['10'], ['5', '9', '10'], ['5', '10'], ['13'], ['9', '10'], ['1']]

filtered_result = []

for i in result:
    if len(i)>2:
        filtered_result.append(i)

print(filtered_result)
或者,例如使用
过滤器

result = filter(lambda x: len(x)>2, result)
您还可以使用列表理解:

result = [x for x in result if len(x)>2]

问题是,您在对列表进行迭代时正在对其进行操作。您最好创建结果列表的筛选副本:

result=[['10'], ['5'], ['6'], ['12'], ['9'], ['10'], ['5', '9', '10'], ['5', '10'], ['13'], ['9', '10'], ['1']]

filtered_result = []

for i in result:
    if len(i)>2:
        filtered_result.append(i)

print(filtered_result)
或者,例如使用
过滤器

result = filter(lambda x: len(x)>2, result)
您还可以使用列表理解:

result = [x for x in result if len(x)>2]

您不应该在迭代列表时从列表中删除项目。相反,用你想保留的项目建立一个新的列表。在列表上迭代时从列表中删除就像锯下你所坐的分支一样。在迭代列表时,你不应该从列表中删除项目。相反,用你想保留的项目建立一个新的列表。从列表中删除,同时在列表上迭代,就像锯断你坐的树枝一样。