我在列表中有一个列表,我试图删除嵌套列表中等于-1的任何值。当我尝试运行我的代码时,我得到一个“ValueError:list.remove(x):x not in list”错误,知道我做错了什么?
for x in list:
for i in x:
if i == -1:
list.remove(x)
答案 0 :(得分:3)
迭代时不应该改变列表。您也不应该将变量命名为list
,因为该名称由内置函数使用。您可以通过简单的list comprehension:
my_list = [[x for x in v if x != -1] for v in my_list]