python迭代删除键值的字典

时间:2016-10-30 23:09:05

标签: python dictionary iteration

如果我想迭代一组词典,删除某个键值为零的所有词典,我该怎么做? 我最初尝试过下面的代码,但在很多情况下这显然不起作用,因为随着对象的删除,组的长度会减少。

<<7>>

1 个答案:

答案 0 :(得分:1)

当您浏览列表时,从列表中删除元素并不是一个好主意。

更多的pythonic解决方案将是:

data = [{'symbol': 'AA', 'sum': 0}, {'symbol': 'BB', 'sum': 0}, {'symbol': 'CC', 'sum': 10}]
data = [x for x in data if x['sum'] != 0]

这样我们就可以根据data中已有的所有项目创建一个列表,如果项目['sum']!= 0