python 字典 setdefault()和get()方法比较详解

yizhihongxing

来和您详细讲解一下关于Python字典中setdefault()和get()方法的比较。

什么是字典

Python中的字典是一种可变容器模型,它存储的是键值对。字典的键必须是唯一的且不可更改,而值则可以是任何类型的对象。字典的常用操作包括增加/删除元素,查找元素等。

get()方法用法

字典类型的get()方法是获取指定键的值,如果指定键不存在,则返回默认值。get()方法的语法如下:

dict.get(key, default=None)

其中,key为字典键值,default为可选参数,表示指定键不存在时的默认值。如果没有指定,则默认为None。

下面是一个使用get()方法的示例:

>>> d = {'a': 1, 'b': 2, 'c': 3}
>>> d.get('a')
1
>>> d.get('d')
None
>>> d.get('d', 4)
4

在这个实例中,字典d包含3个键值对。使用get()方法来获取d字典中的“a”键时会返回1,而获取不存在的“d”键时则会返回None。如果同时指定了default参数,则返回指定的默认值4。

setdefault()方法用法

字典类型的setdefault()方法是获取指定键的值,如果指定键不存在,则插入这个键值对。setdefault()方法的语法如下:

dict.setdefault(key, default=None)

其中,key为字典键值,default为可选参数,表示指定键不存在时的默认值。如果没有指定,则默认为None。setdefault()方法会先判断指定的键是否存在,如果存在,则返回对应的值,如果不存在,则插入这个键值对,并返回指定的默认值或None。

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

>>> d = {'a': 1, 'b': 2, 'c': 3}
>>> d.setdefault('a', 4)
1
>>> d.setdefault('d', 4)
4
>>> d
{'a': 1, 'b': 2, 'c': 3, 'd': 4}

在这个实例中,字典d包含3个键值对。使用setdefault()方法来获取d字典中的“a”键时会返回1,因为“a”键已经存在。而获取不存在的“d”键时,则会插入这个键值对,并返回指定的默认值4。

setdefault()与get()方法比较

在使用setdefault()与get()方法时,需要注意以下几个方面的不同:

  • get()方法只是获取指定键的值,不会对字典做更改;setdefault()方法则会插入指定键值对。
  • get()方法只需要指定键名,而setdefault()方法需要指定键名和默认值。
  • 使用get()方法时,如果指定键不存在,则返回None,如果同时指定了默认值,则返回默认值。而使用setdefault()方法时,则会插入指定的键值对,并返回指定的默认值。
  • 当需要在字典插入指定键值对时,可以使用setdefault()方法,在只需要获取指定键值时,则可以使用get()方法。

下面是另一个更详细的示例:

>>> d = {'a': 1, 'b': 2, 'c': 3}
>>> d.get('a', [])
1
>>> d.get('d', [])
[]
>>> d
{'a': 1, 'b': 2, 'c': 3}
>>> d.setdefault('a', [])
1
>>> d.setdefault('d', [])
[]
>>> d
{'a': 1, 'b': 2, 'c': 3, 'd': []}

在这个示例中,使用get()方法来获取指定键值时,如果指定键存在,则返回对应的值,否则返回默认值[]。使用setdefault()方法时,如果指定的键已经存在,则返回对应的值,否则插入对应的键值对,返回默认值[]。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:python 字典 setdefault()和get()方法比较详解 - Python技术站

(0)
上一篇 2023年5月13日
下一篇 2023年5月13日

相关文章

  • Python的五个标准数据类型你认识几个

    Python是一门高级编程语言,拥有多种数据类型,其中包括五个标准数据类型,分别为数字(Number)、字符串(String)、列表(List)、元组(Tuple)和字典(Dictionary)。 以下是对Python的五个标准数据类型进行详细讲解的攻略: 数字(Number) 在Python中数字(Number)数据类型包括整数(int)、浮点数(floa…

    python 2023年5月14日
    00
  • Python 词典(Dict) 加载与保存示例

    接下来我将为你详细讲解 Python 词典(Dict) 加载与保存示例的完整攻略。 什么是 Python 词典(Dict)? Python 中的词典(Dict)是一种无序、可变的集合数据类型,用于存储以键-值对形式保存的数据。 以下是一种简单的词典示例: person = {‘name’: ‘Alice’, ‘age’: 25, ‘country’: ‘Ca…

    python 2023年5月13日
    00
  • 单利模式及python实现方式详解

    单例模式是一种创建型设计模式,它保证一个类只有一个实例,并提供一个全局访问点来访问该实例。在 Python 中,实现单例模式的方式有很多种,下面我们来详细讲解单例模式及其 Python 实现方式。 什么是单例模式 单例模式是一种保证一个类只有一个实例对象的设计模式。通常情况下,我们使用类的构造函数创建一个新的对象,但是单例模式只允许创建一个实例,并提供一个全…

    python 2023年6月6日
    00
  • python中使用iterrows()对dataframe进行遍历的实例

    使用iterrows()方法可以对DataFrame进行遍历。以以下数据为例: import pandas as pd df = pd.DataFrame({‘name’:[‘Amy’, ‘Bob’, ‘Charlie’], ‘age’:[26, 28, 25], ‘score’:[85, 91, 89]}) 示例一 我们可以通过iterrows()对Dat…

    python 2023年5月14日
    00
  • Python实现京东抢秒杀功能

    Python实现京东抢秒杀功能的完整攻略 京东抢秒杀是一种常见的需求,可以帮助我们在秒杀活动中抢购心仪的商品。本攻略将介绍如何使用Python实现京东抢秒杀功能。 1. 安装Python库 我们需要安装Python的selenium和webdriver库。可以使用以下命令进行安装: pip install selenium pip install webdr…

    python 2023年5月15日
    00
  • python模拟登陆阿里妈妈生成商品推广链接

    Python模拟登陆阿里妈妈生成商品推广链接是一种自动化的方法,可以快速有效地推广商品链接。下面是该攻略的完整流程: 1. 确认所需的工具和信息 在开始之前,需要准备以下工具和信息: Python环境和依赖库(requests、re、json、hashlib、time、selenium、urllib等) 阿里妈妈账号和密码 想要推广的商品的链接 2. 安装依…

    python 2023年6月3日
    00
  • 在终端启动Python时报错的解决方案

    当我们在终端启动Python时,有时会遇到各种异常报错。这些报错可能是由于Python环境配置不正确、Python版本兼容、Python库缺失等原因引起的。以下是一些常见的终端启动Python时报错的解决方案: 1. ImportError ImportError通常是由于Python库缺失或版本不兼容引起的。解决方案是安装或更新相应的Python库。 示例…

    python 2023年5月13日
    00
  • Python实现简单HTML表格解析的方法

    下面是关于Python实现简单HTML表格解析的方法的详细实例教程。 简介 HTML是网页的基础,而网页中最常用的就是表格。在某些情况下,我们需要从HTML表格中提取数据以便进一步处理,因此,Python中如何解析HTML表格变得非常重要。在Python中,有多种解析HTML表格的方法,本篇文章将介绍其中的两种方法:使用pandas库和使用Beautiful…

    python 2023年5月13日
    00
合作推广
合作推广
分享本页
返回顶部