Efficiency difference between dict.has_key and key in dict in Python
本问题已经有最佳答案,请猛点这里访问。
Possible Duplicate:
'has_key()' or 'in'?
在python中,有两种方法可以决定
有人告诉我,第二个比第一个慢,因为
由于我非常怀疑两者的区别,因为我认为python足够聪明,可以将
那么,这两者之间真的有效率上的区别吗?
谢谢。
这两个操作都做相同的事情:检查dict中实现的哈希表中的键。也不会重复整个字典。记住,
如果这些操作的时间安排有差异,它将非常小,并且与
顺便说一句,一般倾向于使用
由于函数调用,
1 2 3 4 5 6 7 8 | >>> D = dict((x, y) for x, y in zip(range(1000000), range(1000000))) >>> from timeit import Timer >>> t = Timer("1700 in D","from __main__ import D") >>> t.timeit() 0.10631704330444336 >>> t = Timer("D.has_key(1700)","from __main__ import D") >>> t.timeit() 0.18113207817077637 |