我最近开始学习python,需要您的帮助。我有一个列表列表,我需要删除长度小于某个数字的列表。
我检查了关于使用列表列表的许多问题和答案,但是我没有发现有关此特定情况的任何信息,因此,感谢您的帮助。
我所拥有的示例:
Records = [[1,2], [3,4], [5,6,7], [8,9,10], [11], [12,13,14,15]]
我想删除列号小于3的列表。所以最后
我想拥有:
Records = [[5,6,7], [8,9,10],[12,13,14,15]]
我认为我必须循环遍历所有列表并检查len,然后消除具有len > 3
的列表,但是我不知道该如何编码。你能帮我么?
谢谢!
答案 0 :(得分:2)
天真,这就像
result = []
for record in Records: # iterate over each element of the list
if len(record) >= 3: # your filter requirement
result.append(record) # adding it to the results we want
print(result)
与其他答案一样,您可以使用具有结构的列表理解来压缩代码很多
[element for element in iterable if filter(element)]
在您的情况下:
[record for record in Records if len(record) >= 3]
答案 1 :(得分:1)
result = [record for record in records if len(record) >= 3]
答案 2 :(得分:0)
如此简单:
Records = [[1,2], [3,4], [5,6,7], [8,9,10], [11], [12,13,14,15]]
[i for i in Records if len(i)>=3]
输出:
[[5, 6, 7], [8, 9, 10], [12, 13, 14, 15]]