我有一个这样的清单:A = [[1,2,3,4],[1,1,2,4],[1,2,3,False],[1,False,2,3],[1,2,3,4],[1,2,3,'word'],[5,6,7,8],[1,4,3,4],[True,1,2,4],[0,1,0,1],[0,0,0,0],[False,False,False,False]]我想要一个这样的列表作为输出:A = [[1,2,3,4],[1,1,2,4],[1,2,3,4],[5,6,7,8],[1,4,3,4],[0,1,0,1],[0,0,0,0]]我只想删除或删除任何列表。它具有字符串或逻辑成员。我该怎么做。
1 回答
蝴蝶不菲
TA贡献1810条经验 获得超4个赞
我们可以通过列表理解来做到这一点,我们执行一个过滤器any(..),检查是否有任何元素是stror的实例bool:
[sublist for sublist in A if not any(isinstance(e, (str, bool)) for e in sublist)]
这将产生:
>>> [sublist for sublist in A if not any(isinstance(e, (str, bool)) for e in sublist)]
[[1, 2, 3, 4], [1, 1, 2, 4], [1, 2, 3, 4], [5, 6, 7, 8], [1, 4, 3, 4], [0, 1, 0, 1], [0, 0, 0, 0]]
添加回答
举报
0/150
提交
取消