Python中文网

python setdefault()

cnpython398

在 Python 中,setdefault() 是一个字典方法,用于根据给定的键获取字典中对应的值,并且可以指定默认值。如果键存在于字典中,则返回对应的值;否则向字典中添加指定的键和默认值,并返回默认值。该方法可以用于避免重复的键值对的添加,以及在键不存在时添加默认值。

使用 setdefault() 方法非常简单。只需要在字典名称后面加上圆括号,并在括号内指定要获取值的键和默认值(如果需要指定默认值的话)。例如:

 swiftCopy code
 my_dict = {"name": "Alice", "age": 25, "gender": "female"}
 ​
 # 获取 name 对应的值
 name_value = my_dict.setdefault("name")
 print(name_value)  # 输出:Alice
 ​
 # 获取 salary 对应的值(不存在,添加键值对并返回默认值)
 salary_value = my_dict.setdefault("salary", 0)
 print(salary_value)  # 输出:0
 print(my_dict)  # 输出:{"name": "Alice", "age": 25, "gender": "female", "salary": 0}

可以看到,如果字典中存在指定的键,则 setdefault() 方法返回对应的值;否则向字典中添加指定的键和默认值,并返回默认值。

需要注意的是,如果指定的键不存在于字典中,则使用 setdefault() 方法添加键值对比直接使用索引符号([])添加键值对更加安全,因为使用索引符号添加键值对时,如果指定的键已经存在于字典中,会覆盖原来的值。而使用 setdefault() 方法添加键值对时,只有在指定的键不存在于字典中时才会添加键值对,否则返回对应的值。

另外,setdefault() 方法还可以用于判断字典中是否包含指定的键。如果字典中存在指定的键,则返回对应的值;否则向字典中添加指定的键和默认值,并返回默认值。例如:

 bashCopy code
 my_dict = {"name": "Alice", "age": 25, "gender": "female"}
 ​
 # 判断字典中是否包含指定的键
 if my_dict.setdefault("name", "") != "":
     print("字典中包含 name 键")

总的来说,setdefault() 方法是一个非常有用的字典方法,可以用于根据给定的键获取字典中对应的值,并且可以指定默认值。使用该方法可以避免重复的键值对的添加,并且可以在键不存在时添加默认值。

上一篇:没有了

下一篇:python tell()