【发布时间】:2018-08-10 00:59:33
【问题描述】:
我想知道查找 python 字典中是否存在键的最佳方法,而不是一次又一次地访问整个键列表。我正在考虑尝试除外。有没有更好的办法?
【问题讨论】:
-
您需要提供更多背景信息。查找某个键是否在字典中的方法是
key in dict,因此完全不清楚您使用 try 和 except 和访问列表指的是什么。 -
我对“没有一次又一次地访问整个键列表”有点迷失,请显示代码。否则,您可以使用
my_dict.get(key),如果密钥不存在则返回None -
检查一个键是否在字典中是常数时间 O(1)
-
如果您正在考虑尝试 catch 分配默认值,只需使用 @roganjosh 推荐的内容并使用默认关键字 arg:
x = foo_dict.get(key, default='some default')
标签: python dictionary try-catch