【发布时间】:2014-12-17 08:33:27
【问题描述】:
我必须在内存中存储 300 多个对象(用户)并根据他们的 ID 获取这些用户。 最有效的方法是什么?
目前我将对象存储在列表中,为了从列表中获取用户,我使用以下代码:
[u for u in users if u.id == id]
这似乎不是很有效,因为在最坏的情况下我必须遍历整个列表。
【问题讨论】:
-
一次创建字典并使用密钥访问直接
-
这些 id 是否为连续数字形式。如果是,那么您可以通过索引直接获取它们,否则字典会很棒。
-
不,用户没有被订购。我认为最好使用字典。谢谢!