我在 Python 方面有一些经验,但我正在参加 Udacity 计算机科学课程来填补我所学知识的空白并补充我已经知道的知识。本课程讨论了一个哈希表查找函数,如果键不在哈希表中,则该函数返回 None 作为键的值。当键不存在时,Python 的字典类型会抛出 KeyError,因此课程说key in mydict
在获取其值之前使用。
我想知道是否这样做更好:
mydefaultval = 75
key = ..
mydict = ..
if key in mydict:
val = mydict[key]
else:
val = mydefaultval
.. 或者
mydefaultval = 75
key = ..
mydict = ..
try:
val = mydict[key]
except KeyError:
val = mydefaultval
我想Python要检查密钥是否存在,它必须在字典中找到它。如果我然后抓住那个键的值,它必须做同样的事情两次。我的想法是正确的,还是 Python 会做其他事情?