我是 python 新手。我需要一个数据结构来存储一些对象的计数。例如,我想存储访问量最大的网页。可以说。我有 100 个访问量最大的网页。我会记录每个网页的访问次数。我可能需要更新列表。我一定会更新访问次数。不必订购。我将查看给定网页 ID 的相关访问计数。我打算用字典。在python中有没有更快的方法来做到这一点?
问问题
249 次
2 回答
2
字典是此任务的合适且快速的数据结构(将网页 ID 映射到访问计数)。
Python 字典是使用哈希表实现的,用于快速 O(1) 访问。它们是如此之快,以至于几乎任何避免它们的尝试都会使代码运行速度变慢,并使代码看起来不愉快。
PS 另请查看专门为此类工作设计的collections.Counter (计数命中)。它被实现为一个字典,初始默认值设置为零。
于 2012-04-28T22:35:01.793 回答
1
Python 字典对象是整个 Python 语言中最优化的部分之一,原因是字典无处不在。
例如,通常每个类的每个对象实例都使用字典来保存实例数据成员的内容,类是包含方法的字典,模块使用字典来保存全局变量,系统使用字典来保存和查找模块和很快。
使用字典来保存计数器是 Python 中的一个好方法。
于 2012-04-28T22:37:21.837 回答