【发布时间】:2010-11-05 10:11:09
【问题描述】:
考虑这种字典格式。
{1:{'name':'chrome', 'author':'google', 'url':'http://www.google.com/' },
2:{'name':'firefox','author':'mozilla','url':'http://www.mozilla.com/'}}
我想删除所有具有相同名称和作者的项目。
我可以通过将所有键放在一个集合中轻松地删除基于键的重复条目,并且可以扩展它以处理特定值,但这似乎是一个昂贵的操作,它会多次迭代字典。我不知道如何以有效的方式使用两个值来做到这一点。这是一本包含数千个项目的字典。
【问题讨论】:
-
你如何获得这些数据?您可以首先使用到 URL 的字典映射(名称、作者)对来构建它,然后根本不需要这样做。
-
可能只是改变了字典的结构并设置了名字和作者是字典的关键吗?
-
我没有特别提到,但我也想统计删除的项目以供内部参考,通过前后执行
len(dict)。改变结构没有区别,因为我也删除了重复的键。我稍微简化了示例中的字典。
标签: python dictionary python-2.5