我有一个元组列表,每个元组有大约20个元素 . 基本数据结构如下:
data[1]
>>('3824813',
'310202',
'AEOIME',
'UEJNAJ',
...
)
其中一些元组包含未定义的字符串,在这种情况下,我想要排除包含元组 . 所以我使用 filter
之类的:
data2 = list(filter(lambda t: '' not in t, data))
现在情况稍微复杂一点,因为我现在知道元组的第15个元素仍应保留,即使它是空白的 .
My question is: 如果除了第15个元素之外的任何元素中包含 ''
,如何编写一个排除列表中所有元组的过滤器?
我唯一能想到的是做一个单独的过滤器来找到空的第15个元素,并在我进行重度过滤之后将它们组合回来 . 对我来说,这似乎过于苛刻,但那只是我 . 无论哪种方式,让我知道这里有什么用,谢谢 .
1 回答
你可以做的一件事就是写一个像这样的过滤函数:
然后,如果我正确理解您的问题,您应该可以使用它来过滤您的列表:
但是,我不太了解你的数据 . 你有没有超过第15个元素为空的元组或者元组中只有一个字符串为空的元组吗?