如何清理字典中值等于变量的项

20 浏览
0 Comments

如何清理字典中值等于变量的项

这个问题已经有了答案:

Python:删除Python字典中空列表的优雅方法

从dict中删除空字符串键的高效方法

我有一个由多个键组成的字典。它是通过一个循环创建的,所以一开始生成的键没有值,但是我稍后会填充它们。

有时,一个键没有被填充,所以我想把它从字典中删除。

字典看起来像这样:

{'a' : [1,2,3,4] , 'b' : [5,6,7,8] ,'c': [] ,'d': [9,10,11]}

我可能有多个值看起来像\'c\'

我尝试了try/except但仍然得到“在迭代过程中字典大小发生了变化”

d= {'a' : [1,2,3,4] , 'b' : [5,6,7,8] ,'c': [] ,'d': [9,10,11]}
dic_key = d.keys()
for key in dic_key:
         try:
             if len(d[key]) == 0:
                    del d[key]
         except:
             pass

“在迭代过程中字典大小发生了变化”

admin 更改状态以发布 2023年5月21日
0
0 Comments

使用字典表达式

尝试这个:

d = {k:v for k,v in d.items() if len(v)}

0