Python 3 – 字典 setdefault() 方法

Python 3 – 字典 setdefault() 方法

在Python中,字典(Dictionary)是一种非常有用的数据结构,它是以键值对(key-value pairs)的形式存储数据。Python提供了许多方便的方法来操作字典,其中之一就是setdefault()方法。

setdefault()方法是用于获取字典中指定键对应的值。如果该键不存在,则会向字典中添加该键并设对应的值为默认值。下面我们将详细介绍setdefault()方法的用法和示例。

setdefault()方法的语法

setdefault()方法的语法如下:

dictionary.setdefault(key, default_value)

其中,key表示要获取的键名,default_value表示默认值(如果该键不存在,则使用默认值添加到字典中)。

setdefault()方法的返回值

setdefault()方法的返回值为:

  • 如果字典中存在指定的键,则返回该键对应的值。
  • 如果字典中不存在指定的键,则将该键添加到字典中,并返回指定的默认值。

下面是一些使用setdefault()方法的示例:

示例1:使用setdefault()方法获取字典中存在的键的值

# 创建一个字典
my_dict = {"apple": 3, "banana": 2, "orange": 1}

# 使用setdefault()方法获取键"apple"的值
apple_value = my_dict.setdefault("apple")
print(apple_value) # 输出 3

# 使用setdefault()方法获取键"orange"的值
orange_value = my_dict.setdefault("orange")
print(orange_value) # 输出 1

在上面的示例中,我们创建了一个字典并使用setdefault()方法获取了两个现有键(”apple”和”orange”)的值。这里,setdefault()方法返回了各自对应的值(3和1)。

示例2:使用setdefault()方法获取字典中不存在的键的默认值

# 创建一个字典
my_dict = {"apple": 3, "banana": 2, "orange": 1}

# 使用setdefault()方法获取键"grape"的值
grape_value = my_dict.setdefault("grape", 0)
print(grape_value) # 输出 0

print(my_dict) # 输出 {"apple": 3, "banana": 2, "orange": 1, "grape": 0}

在这个示例中,我们创建了一个具有三个键(”apple”、”banana”和”orange”)的字典。然后,我们使用setdefault()方法获取了一个不存在的键(”grape”)的默认值(0)。这里setdefault()方法将”grape”键添加到字典中,并将其对应的值设为0。因此,我们可以看到输出的字典为{“apple”: 3, “banana”: 2, “orange”: 1, “grape”: 0}。

示例3:使用setdefault()方法与空列表结合

# 创建一个字典
my_dict = {"apple": 3, "banana": 2, "orange": 1}

# 使用setdefault()方法获取键"grape"的值(为空列表)
grape_list = my_dict.setdefault("grape", [])

# 给列表添加一个元素
grape_list.append("red")

print(my_dict) # 输出 {"apple": 3, "banana": 2, "orange": 1, "grape": ["red"]}

在这个示例中,我们创建了一个具有三个键(”apple”、”banana”和”orange”)的字典。然后,我们使用setdefault()方法获取了一个不存在的键(”grape”)的默认值。由于这里的默认值为一个空列表,因此setdefault()方法将”grape”键添加到字典中,并将其对应的值设为空列表。因此,我们可以看到在我们的下一步操作中,添加一个元素到列表中,输出的字典为{“apple”: 3, “banana”: 2, “orange”: 1, “grape”: [“red”]}。

结论

setdefault()方法是Python中非常有用的一个字典操作方法,它可以用来获取指定键的值,或在键不存在时向字典中添加该键并设对应的值为默认值。如果你还没有使用setdefault()方法,那么希望这篇文章对你有所帮助!

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程