当前位置:首页 > 行业动态 > 正文

python中setdefault函数的用法

在Python中,setdefault是字典(dict)对象的一个方法,用于获取指定键的值,如果该键不存在于字典中,则插入并返回一个默认值,这个方法在某些场景下可以提供更简洁、更高效的代码实现,下面我们来详细了解一下setdefault函数的用法。

语法

dict.setdefault(key, default=None)

key:要查找的键。

default:可选参数,如果指定的键不存在时,设置的默认值,默认为None

返回值

setdefault方法会返回指定键对应的值,如果该键存在于字典中,则返回其对应的值;如果不存在,则插入该键并设置其值为默认值,然后返回默认值。

示例

假设我们有一个字典students,记录了学生的姓名和年龄:

students = {"张三": 18, "李四": 20}

现在我们想要获取学生的年龄,如果学生不存在,则返回默认值1

使用setdefault方法,可以实现这个需求:

age = students.setdefault("王五", 1)
print(age)  # 输出:1
print(students)  # 输出:{"张三": 18, "李四": 20, "王五": 1}

在这个例子中,我们尝试获取键为"王五"的值,但是该键不存在于字典中,所以setdefault方法会将"王五"插入到字典中,并设置其值为1,然后返回默认值1

如果不使用setdefault方法,我们需要先判断键是否存在,然后再进行操作,代码如下:

age = students.get("王五")
if age is None:
    age = 1
    students["王五"] = 1
print(age)  # 输出:1
print(students)  # 输出:{"张三": 18, "李四": 20, "王五": 1}

可以看到,使用setdefault方法可以让代码更简洁、更高效。

注意事项

1、如果指定的键已经存在于字典中,setdefault方法不会修改该键对应的值。

2、如果指定的键不存在于字典中,且没有提供默认值,setdefault方法会将该键插入到字典中,并将其值设置为None

归纳

setdefault方法是Python字典中的一个实用方法,可以在获取指定键的值的同时,处理键不存在的情况,使用setdefault方法可以让代码更简洁、更高效,在实际开发中,可以根据需要选择合适的方法来实现功能。

0