我應(yīng)該在Python dicts上使用'has_key()'或'in'嗎?我想知道做什么更好:d = {'a': 1, 'b': 2}'a' in dTrue要么:d = {'a': 1, 'b': 2}d.has_key('a')True
3 回答

PIPIONE
TA貢獻1829條經(jīng)驗 獲得超9個贊
in
贏得勝利,不僅僅是優(yōu)雅(而不是被棄用;-)而且還有表現(xiàn),例如:
$ python -mtimeit -s'd=dict.fromkeys(range(99))' '12 in d'10000000 loops, best of 3: 0.0983 usec per loop $ python -mtimeit -s'd=dict.fromkeys(range(99))' 'd.has_key(12)'1000000 loops, best of 3: 0.21 usec per loop
雖然以下觀察并非總是如此,但您會注意到,通常,在Python中,更快的解決方案是更優(yōu)雅和Pythonic; 這就是為什么-mtimeit
SO有用 - 它不只是在這里和那里節(jié)省一百納秒! - )
添加回答
舉報
0/150
提交
取消