使用成员作为键将对象分配给dict

时间:2018-05-17 16:55:44

标签: python

我使用dict确保我的系统中只有一个Path副本:

 for obj in obj_list:
     obj_dict[obj.fullname]=obj

是否有一些更有效的方法可以做到这一点,我错过了?

3 个答案:

答案 0 :(得分:2)

不是真的。对于较小的数据集,此方法比线性搜索要慢,但对于较大的数据集,此方法会快得多,因为对重复条目的测试是哈希表查找。

代码的时间复杂度是摊销O(n)(当你必须处理数据集中的每个项目时,你希望实现的最好),而进行线性搜索是O(n 2 < / SUP>)。

答案 1 :(得分:0)

答案 2 :(得分:0)

查看create-a-dictionary-with-list-comprehension-in-python

列表理解要快得多 - 我认为这是效率的意思。