Python字典get()函数使用详解

 更新时间:2023年07月20日 10:40:41   作者:士别三日wyx  
在Python中,字典对象有一个名为get()的方法,它可以用来获取字典中键对应的值,该方法接受一个键作为参数,并返回该键对应的值,如果键不存在于字典中,则返回None,本文就给大家介绍一下Python get()函数使用方法,需要的朋友可以参考下

get() 可以根据键「获取值」

语法

dict.get( key, value )

参数

  • key :(必选)指定要搜索的键
  • value :(可选)如果键不存在,就返回指定内容

返回值

  • 如果键存在,就返回键对应的值
  • 如果键不存在,就返回指定内容或None

实例:根据键获取字典的值

dict1 = {'key1': 'value1', 'key2': 'value2'}
print(dict1.get('key1'))

输出:

value1

1、设置默认返回值

get() 可以指定「默认」的「返回值」,键不存在时,它不会报错,而是返回一个默认值,这样的好处是,程序在运行时不会出现异常的情况。

「不指定」返回值,键不存在时,默认返回 None

dict1 = {'key1': 'value1', 'key2': 'value2'}
print(dict1.get('key3'))
print(dict1.get('key3', None))

输出:

None
None

「指定」返回值,键不存在时,返回会指定的返回值

dict1 = {'key1': 'value1', 'key2': 'value2'}
print(dict1.get('key3', '指定返回值'))

输出:

指定返回值

返回值可以是整型、字符串、元祖、列表等各种数据类型

dict1 = {'key1': 'value1', 'key2': 'value2'}
print(dict1.get('key3', 1))
print(dict1.get('key3', 1.1))
print(dict1.get('key3', True))
print(dict1.get('key3', [1, 2]))
print(dict1.get('key3', (1, 2)))
print(dict1.get('key3', {1, 2}))

输出:

1
1.1
True
[1, 2]
(1, 2)
{1, 2}

2、嵌套字典取值

字典中「嵌套」字典时,可以多次调用 get() ,来取值。

dict1 = {'key1': 'value1', 'key2': {'key3': 'value3'}}
print(dict1.get('key2').get('key3'))
# 等价于这样
result = dict1.get('key2')
print(result)
result1 = result.get('key3')
print(result1)

输出:

value3
{'key3': 'value3'}
value3

3、get() 和 dict[key] 的区别

get() 和 dict[key] 都可以根据键获取字典的值,不同的是

get() 的键在字典中不存在时,会返回「None」 或 「指定内容」

dict1 = {'key1': 'value1', 'key2': 'value2'}
print(dict1.get('key3'))
print(dict1.get('key3', '指定内容'))

输出:

None
指定内容

dict[key] 的键在字典中不存在时,会「报错」 KeyError: ‘key3’

dict1 = {'key1': 'value1', 'key2': 'value2'}
print(dict1['key3'])

输出:

4、统计元素计数

get() 可以「统计」列表元素出现的「个数」,将统计结果保存到字典中

dict1 = {}
list1 = ['¥', '¥', '¥', '$', '$', '$', '$', '$']
for i in list1:
    dict1[i] = dict1.get(i, 0) + 1
print(dict1)

输出:

{'¥': 3, '$': 5}

到此这篇关于Python字典get()函数使用详解的文章就介绍到这了,更多相关Python get()函数内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Python不同格式打印九九乘法表示例

    Python不同格式打印九九乘法表示例

    大家好,本篇文章主要讲的是Python不同格式打印九九乘法表示例,感兴趣的同学赶快来看一看吧,对你有帮助的话记得收藏一下哦,方便下次浏览
    2021-12-12
  • 详谈Python高阶函数与函数装饰器(推荐)

    详谈Python高阶函数与函数装饰器(推荐)

    下面小编就为大家带来一篇详谈Python高阶函数与函数装饰器(推荐)。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-09-09
  • python try 异常处理(史上最全)

    python try 异常处理(史上最全)

    为了处理异常,我们使用try...except,这篇文章主要介绍了python try 异常处理,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2019-03-03
  • 手把手教你打造个性化全栈应用Python Reflex框架全面攻略

    手把手教你打造个性化全栈应用Python Reflex框架全面攻略

    Reflex框架是为了解决传统全栈开发中的一些挑战而诞生的,它充分利用了现代前端框架(如React)的优势,与后端技术(如Node.js)深度集成,使得开发者能够更加流畅地构建整个应用,Reflex的设计理念包括简化、响应性和一致性,旨在提高全栈开发的效率和可维护性
    2023-12-12
  • pow在python中的含义及用法

    pow在python中的含义及用法

    在本篇文章里小编给各位分享了关于pow在python中是什么意思的相关知识点内容,有需要的朋友们参考学习下。
    2019-07-07
  • Python中CFFI简介和使用实际示例

    Python中CFFI简介和使用实际示例

    CFFI是Python调用C代码的接口库,支持ABI和API两种模式,提供自动内存管理与NumPy集成能力,相比ctypes,其接口更友好,PyPy性能更优,适合高性能计算和C库集成场景,本文给大家介绍Python中CFFI简介和使用实际示例,感兴趣的朋友跟随小编一起看看吧
    2025-09-09
  • Jupyter加载文件的实现方法

    Jupyter加载文件的实现方法

    这篇文章主要介绍了Jupyter加载文件的实现方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-04-04
  • python爬虫模拟浏览器的两种方法实例分析

    python爬虫模拟浏览器的两种方法实例分析

    这篇文章主要介绍了python爬虫模拟浏览器的两种方法,结合实例形式分析了Python爬虫模拟浏览器的两种常见操作技巧与使用注意事项,需要的朋友可以参考下
    2019-12-12
  • PyTorch中torch.no_grad()用法举例详解

    PyTorch中torch.no_grad()用法举例详解

    这篇文章主要介绍了PyTorch中torch.no_grad()用法的相关资料,torch.no_grad()是PyTorch的上下文管理器,用于临时禁用自动梯度计算,减少内存消耗并加快计算速度,它适用于模型评估或推理阶段,可以显著提高效率,需要的朋友可以参考下
    2024-09-09
  • 浅谈Python实现opencv之图片色素的数值运算和逻辑运算

    浅谈Python实现opencv之图片色素的数值运算和逻辑运算

    今天带大家来学习的是关于Python的相关知识,文章围绕着图片色素的数值运算和逻辑运算展开,文中有非常详细的的介绍及代码示例,需要的朋友可以参考下
    2021-06-06

最新评论