我使用dict确保我的系统中只有一个Path副本:
for obj in obj_list:
obj_dict[obj.fullname]=obj
是否有一些更有效的方法可以做到这一点,我错过了?
答案 0 :(得分:2)
不是真的。对于较小的数据集,此方法比线性搜索要慢,但对于较大的数据集,此方法会快得多,因为对重复条目的测试是哈希表查找。
代码的时间复杂度是摊销O(n)(当你必须处理数据集中的每个项目时,你希望实现的最好),而进行线性搜索是O(n 2 < / SUP>)。
答案 1 :(得分:0)
答案 2 :(得分:0)
查看create-a-dictionary-with-list-comprehension-in-python
列表理解要快得多 - 我认为这是效率的意思。