3

我想知道是否有一种简单的方法可以找到列表中所有为空的索引。

mylist  = [ [1,2,3,4], [] , [1,2,3,4] , [] ]

next((i for i, j in enumerate(mylist) if not j),"no empty indexes found")将返回列表的第一个空索引,但我可以返回所有这些吗?"no empty indexes found"如果没有空索引,它将默认为字符串。

我想将所有空索引附加到另一个列表中使用。

my_indexes_list.append(next((i for i, j in enumerate(self.list_of_colors) if not j),5))
4

3 回答 3

8

将空序列在布尔上下文中为假的事实与列表推导一起使用:

>>> mylist  = [[1,2,3,4], [] , [1,2,3,4] , []]
>>> [i for i,x in enumerate(mylist) if not x]
[1, 3]
于 2013-11-12T00:38:12.517 回答
1
>>> [i for i,x in enumerate(mylist) if x ==[] ]
[1, 3]
于 2013-11-12T00:26:54.467 回答
-1
empties[]
for s in mylist:
    is len(s) == 0
        empties.append(mylist.index(s))
于 2013-11-12T00:22:26.617 回答