可能重複:
'has_key()' or 'in'?效率差
在Python中,有是決定一個key
是否在dict
的兩種方法:
if dict.has_key(key)
and if key in dict
有人告訴我,第二個比第一個更慢,因爲in
關鍵字使得表達過字典的迭代器,所以它會比has_key
另類,這顯然使用哈希做出決定慢。
由於我非常懷疑這種差異,因爲我認爲Python足夠聰明,可以將in
關鍵字dict
之前的關鍵字翻譯爲某種散列方式,所以我找不到任何關於此的正式聲明。
那麼,有沒有真正的任何兩者之間的效率差異?
謝謝。
....這一切,此外,「對象的has_key()」已經過時,不應再使用。 :) – jonesy 2012-07-09 02:28:52