为什么 dict.get(key) 而不是 dict[key]?

2022-01-30 00:00:00 python dictionary

问题描述

今天,我遇到了 dict 方法 get,它给定字典中的键,返回关联的值.

Today, I came across the dict method get which, given a key in the dictionary, returns the associated value.

这个函数有什么用途?如果我想在字典中找到与某个键关联的值,我可以执行 dict[key],它会返回相同的内容:

For what purpose is this function useful? If I wanted to find a value associated with a key in a dictionary, I can just do dict[key], and it returns the same thing:

dictionary = {"Name": "Harry", "Age": 17}
dictionary["Name"]
dictionary.get("Name")


解决方案

它允许您在缺少键时提供默认值:

It allows you to provide a default value if the key is missing:

dictionary.get("bogus", default_value)

返回 default_value(无论你选择什么),而

returns default_value (whatever you choose it to be), whereas

dictionary["bogus"]

会引发 KeyError.

如果省略,default_valueNone,这样

If omitted, default_value is None, such that

dictionary.get("bogus")  # <-- No default specified -- defaults to None

返回 None 就像

dictionary.get("bogus", None)

会的.

相关文章