value = dictionary.get(key, default_value)
key :要在字典中搜索的键。default_value :如果找不到键,则返回的值。如果未指定,则默认为 None 。方法示例get()
my_dict = {'a': 1, 'b': 2, 'c': 3}# Access existing keyvalue = my_dict.get('b')print(value) # Output: 2# Access non-existing key without default valuevalue = my_dict.get('d')print(value) # Output: None# Access non-existing key with default valuevalue = my_dict.get('d', 4)print(value) # Output: 4
在此示例中,当 中找不到键 'd' 时,该 get() 方法将默认返回 None ,或者 4 如果指定为默认 my_dict 值。
处理丢失的键值利用该 get() 方法有助于避免在处理可能短缺键的字典时涌现非常。这在处理从外部源(如 JSON 相应或配置文件)剖析的数据时特殊有用。
config = {'host': 'localhost', 'port': 8080}# Retrieve existing keyhost = config.get('host')print(host) # Output: 'localhost'# Retrieve non-existing key with default valuetimeout = config.get('timeout', 30)print(timeout) # Output: 30
setdefault()利用方法
该 setdefault() 方法类似于 get() ,但如果键不存在,它还会设置该键的默认值。当您想要确保某个键在字典中具有默认值时,这可能很有用。

value = dictionary.setdefault(key, default_value)
方法setdefault()
my_dict = {'a': 1, 'b': 2}# Access existing keyvalue = my_dict.setdefault('b', 0)print(value) # Output: 2print(my_dict) # Output: {'a': 1, 'b': 2}# Access non-existing key and set default valuevalue = my_dict.setdefault('c', 3)print(value) # Output: 3print(my_dict) # Output: {'a': 1, 'b': 2, 'c': 3}
在此示例中,该 setdefault() 方法检讨键 'c' 是否存在于 my_dict 中。由于它没有,因此它会添加具有默认值 3 的键。
简化数据初始化该 setdefault() 方法在初始化嵌套字典或字典中的列表时特殊有用。
data = {}# Initialize nested dictionary if not presentdata.setdefault('user', {}).setdefault('preferences', {}).setdefault('theme', 'light')print(data) # Output: {'user': {'preferences': {'theme': 'light'}}}
在此示例中, setdefault() 用于确保创建嵌套字典构造(如果该构造尚不存在),并根据须要设置默认值。
字典 get() 的方法是优雅地处理丢失键的主要工具,它供应了一种返回默认值而不是引发非常的方法。该 setdefault() 方法通过在短缺键时设置默认值来进一步简化字典管理。总之,这些方法可以使代码更可靠、更易于掩护,尤其是在处理繁芜的数据构造或来自外部源的数据时。