Python - 从词典列表中删除带有空值的dicts

nmh*_*nmh 1 python dictionary list

我想删除具有空值的字典元素列表.

所以对于以下内容:

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": ""}]
Run Code Online (Sandbox Code Playgroud)

将返回一个新的词典:

[{"end": "00:15", "item": "Paul Test 1", "start": "00:00"}, {"end": "00:14", "item": "Paul Test 2 ", "start": "00:30"}]
Run Code Online (Sandbox Code Playgroud)

我试过了:

{k:v for k,v in dict if not v}
Run Code Online (Sandbox Code Playgroud)

但我得到了:

ValueError: too many values to unpack (expected 2)
Run Code Online (Sandbox Code Playgroud)

Dan*_*sky 5

试试这个:

print([d for d in arr if all(d.values())])
Run Code Online (Sandbox Code Playgroud)

不要dict用作名称:你重写Python的名字.在你的情况下,它不是字典,而是一系列字典.