📜  diccionario setdefault (1)

📅  最后修改于: 2023-12-03 15:14:40.972000             🧑  作者: Mango

Python 中的 Dictionary setdefault() 方法

在 Python 中,Dictionary 是一种用于存储键值对的数据类型。而 setdefault() 是一个 Dictionary 类型中的方法,用于获取给定键的值,如果键不存在于字典中,则会添加键并将值设为默认值。

语法
dictionary.setdefault(key, default=none)
参数说明
  • key: 必填参数,表示要查找的键。
  • default: 可选参数,如果该键不存在,则设置它的默认值。
示例

下面是一个简单的示例,将说明 setdefault() 的用法:

# 创建字典
dict = {'a': 1, 'b': 2}

# 通过 key 'c' 获取值,设默认值为 None
value = dict.setdefault('c')

print("dict['c'] = ", value)   # dict['c'] =  None

# 在字典中添加一个新键值对,并设置默认值
value2 = dict.setdefault('d', 4)

print("dict['d'] = ", value2)  # dict['d'] =  4

# 字典原始值不变
print(dict)                    # {'a': 1, 'b': 2, 'c': None, 'd': 4}
解释

上面的代码块运行结果如下:

dict['c'] =  None
dict['d'] =  4
{'a': 1, 'b': 2, 'c': None, 'd': 4}

在第一次调用 setdefault() 方法时,由于键 'c' 不存在于字典中,它将被添加到字典中,并返回默认值 None。在第二次调用 setdefault() 方法时,由于键 'd' 不存在于字典中,它也会被添加到字典中,并返回 4 作为其默认值。

在以上示例中,最后打印的字典原始值不变,其中包括了 'c' 和 'd' 两个键值对。这就是与 get() 方法的一个重要区别,get() 方法只是查找键值对的值,而不会修改原始字典。

总结

setdefault() 方法是一个非常有用的 Dictionary 方法,它允许程序员在字典中获取键值对的值,并在键不存在的情况下设置默认值。它比直接使用 get() 方法更加灵活,能够在字典中同时添加新的键值对。因此,在开发 Python 程序的过程中,掌握 setdefault() 方法的用法是非常有必要的。