python字典setdefault方法和get方法使用实例

yipeiwu_com6年前Python基础

这篇文章主要介绍了python字典setdefault方法和get方法使用实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

在python的字典对象中,可以直接使用键名获取键值,像这样:

>>> d = {"x":1,"y":2}
>>> d["x"]
>>> d["y"]
>>>

但如果键名不存在,则会报错:

>>> d["z"]
Traceback (most recent call last):
 File "<stdin>", line 1, in <module>
KeyError: 'z'
>>>

这就影响了代码的可执行性。不过可以使用get方法或者setdefault方法避免这种错误,两种方法的作用都是获取键的键值,如果键存在于字典中,则返回键值;如果字典中不存在这个键,则返回一个默认值(这个值默认是None,但可以自行设定),如下:

d = {"x":1, "y":2}
print(d.get("z"))
print(d.get("z",9))

输入结果如下:

None
9

可以看到,“z“这个键并不存在字典中,使用get方法获取时,就返回了None,第二次使用get方法时,设置了返回的默认值 9 。setdefault方法也是一样的。

d = {"x":1, "y":2}
print(d.setdefault("z"))
print(d.setdefault("z",9))

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

对于Python异常处理慎用“except:pass”建议

翻译自StackOverflow中一个关于Python异常处理的问答。 问题:为什么“except:pass”是一个不好的编程习惯? 我时常在StackOverflow上看到有人评论关于...

Python新手在作用域方面经常容易碰到的问题

通常,当我们定义了一个全局变量(好吧,我这样说是因为讲解的需要——全局变量是不好的),我们用一个函数访问它们是能被Python理解的:   bar = 42 def fo...

python3 读写文件换行符的方法

最近在处理文本文件时,遇到编码格式和换行符的问题。 基本上都是GBK 和 UTF-8 编码的文本文件,但是python3 中默认的都是按照 utf-8 来打开。用不正确的编码参数打开,在...

Python实现将n个点均匀地分布在球面上的方法

Python实现将n个点均匀地分布在球面上的方法

本文实例讲述了Python实现将n个点均匀地分布在球面上的方法。分享给大家供大家参考。具体分析如下: 最近工作上遇到一个需求,将10000左右个点均匀地分布在一个球面上。所谓的均匀,即相...

在漏洞利用Python代码真的很爽

不知道怎么忽然想看这个,呵呵 小我的python的反shell的代码 #!/usr/bin/python # Python Connect-back Bac...