python 字典操做中has_key() 和 in 比較。html
在寫代碼時,使用has_key()和in均可以達到咱們想要的效果,那麼使用has_key()和in那個更加pythonic?python
d = {'a': 1, 'b': 2} 'a' in d True
或者oop
d = {'a': 1, 'b': 2} d.has_key('a') True
從運算速度來比較:post
python2比較:ui
> python2 -mtimeit -s'd=dict.fromkeys(range(99))' '12 in d' 10000000 loops, best of 3: 0.0374 usec per loop > python2 -mtimeit -s'd=dict.fromkeys(range(99))' 'd.has_key(12)' 10000000 loops, best of 3: 0.0719 usec per loop
python3 去除了has_key()方法,參考:spa
has_key() was removed in Python 3.x.code
從python版本支持:htm
Python 2.x 支持 has_key().blog
Python 2.3+ 和ython 3.x 支持 in.rem
總結:
使用in是更加pythonic