2017-09-04 457 views
1

我想删除具有空值的字典元素列表。Python - 从字典列表中删除具有空值的字典

所以以下:

dict = [{"end": "00:15", "item": "Paul Test 1", "start": "00:00"}, {"end": "00:14", "item": "Paul Test 2 ", "start": "00:30"}, {"end": "", "item": "", "start": ""}, {"end": "", "item": "", "start": ""}, {"end": "", "item": "", "start": ""}] 

将返回一个新的字典:

[{"end": "00:15", "item": "Paul Test 1", "start": "00:00"}, {"end": "00:14", "item": "Paul Test 2 ", "start": "00:30"}] 

我已经试过:

{k:v for k,v in dict if not v} 

,但我发现:

ValueError: too many values to unpack (expected 2) 

回答

4

试试这个:

print([d for d in arr if all(d.values())]) 

不要使用dict的名字:您覆盖Python的一个。在你的情况下,它不是一本字典,它是一组字典。

+0

您应该使用'd.values()',因为不使用这些键。 –

+0

@MosesKoledoye谢谢你,你是对的 –

+0

辉煌的工作表示感谢。有一个问题,我认为数组包含括号和列表中包含方括号? – nmh

相关问题