Ich möchte testen, ob ein Schlüssel im Wörterbuch vorhanden ist, bevor ich seinen Wert aktualisiere. Ich habe den folgenden Code geschrieben:
if 'key1' in dict.keys(): print "blah" else: print "boo"
Ich denke, dass dies nicht der beste Weg ist, diese Aufgabe zu erfüllen. Gibt es eine bessere Möglichkeit, Schlüssel in einem Wörterbuch zu testen?
直接使用
key in my_dict
而不是key in my_dict.keys()
:这会更快,因为它使用字典的 O(1) 哈希,而不是执行 O(n )对键列表进行线性搜索。
in
测试dict
中是否存在键:使用
dict.get()
当键不存在时提供默认值:要为每个键提供默认值,请使用
dict.setdefault()
在每个作业上:...或者更好,使用
defaultdict
来自collections
模块: