python字典的常用方法总结

yipeiwu_com6年前Python基础

python中字典是非常常用的数据类型,了解各种方法的作用及优缺点对于字典的使用非常有用。

dict.clear() 的方法用于清空所有的键值对,清空后字典变成空字典。代码示例如下:

data = {"x":12,"y":45} 

data.clear()

data

 

1、/22、get() 通过key获取value

dict.get() 的方法通过key获取value。代码示例如下:

data = {"x":12,"y":45} 

data.get("x")

 

当key不存在时返回None,而不会报错。如果直接通过键来获取相应的值,当键-值对不存在时,会出现KeyError错误。代码示例如下:

data = {"x":12,"y":45} 

print(data.get("z"))

 

setdefault() 获取或添加键值对

dict.setdefault() 的方法有点像dict.get() 的方法,可用来获取字典中的key对应的值。但不同于dict.get() 的方法,当访问的key值不存在时,dict.setfault() 的方法会将该值添加到原字典中,相应的value为None。代码示例如下:

data = {"x":12,"y":45} 

data.setdefault("z")

data

 

如果是通过键值对来访问原字典,当原字典中不存在该键值对时,dict.setdefault() 的方法会将该键值对添加到原字典中。代码示例如下:

data = {"x":12,"y":45} 

data.setdefault("z",66)

data

 

1、/24、update() 用一个字典更新另一个字典

dict.update() 的方法用一个字典中的项更新另一个字典。如果被更新的字典已含有对应的key值,这个key值对应的原value会被替换。代码示例如下:

data = {"x":12,"y":45} 

data.update({"x":88})

data

 

dict.update() 的方法用一个字典中的项更新另一个字典。如果被更新的字典中无对应的key-value,新的key-value会被添加到原字典中。代码示例如下:

data = {"x":12,"y":45} 

data.update({"z":66})

data

 

items() 获取字典所有键值对

dict.items() 的方法获取的是一个字典视图,包含所有的字典项,每个元素为一个键值对。这些元素的排列顺序不定。代码示例如下:

data = {"x":12,"y":45,"z":66} 

data.items()

 

dict.items() 的方法获取的是一个字典视图,可获取其长度。但若需要进一步的操作,可将其转换成列表。代码示例如下:

a = data.items()

print(len(a))

list(a)

 

keys() 获取字典所有的键

dict.keys() 的方法获取的是一个字典视图,包含字典所有的键。代码示例如下:

data = {"x":12,"y":45,"z":66} 

data.keys()

 

dict.keys() 的方法获取的是一个字典视图,可获取其长度。但若需要进一步的操作,可将其转换成列表。代码示例如下:

b = data.keys()

list(b)

values() 获取字典所有的值

dict.values() 的方法获取的是一个字典视图,包含字典所有的值。代码示例如下:

data = {"x":12,"y":12,"z":66} 

data.values()

dict.values() 的方法获取的是一个字典视图,可获取其长度。但若需要进一步的操作,可将其转换成列表。代码示例如下:

c = data.values()

list(c)

1、/18、pop() 获取指定键关联值并删除该键值对

dict.pop() 的方法用于删除指定键值对,但这个删除的键值对仍可使用。代码示例如下:

data = {"x":12,"y":12,"z":66} 

data.pop("z")

data

1、/19、popitem() 删除字典中最后一个键值对

dict.popitem() 的方法类似于list.pop() 的方法,用于删除字典中最后一个键值对(也有定义说这个方法用于删除字典中的随机项,但这个随机并非是真的随机)。代码示例如下:

data = {"x":12,"y":12,"z":66} 

data.popitem()

data

如果大家对以上知识点有任何疑问可以在下方留言,感谢大家对【听图阁-专注于Python设计】的支持。

相关文章

python docx 中文字体设置的操作方法

最近用到了docx生成word文档,docx本身用起来很方便,自带的各种样式都很好看,美中不足的就是对中文的支持不够好。在未设置中文字体的时候,生成的文档虽然可以显示中文,但是笔画大小不...

解决Django中调用keras的模型出现的问题

笔者小白在用Django写一个表格单据图片的识别应用的时候,遇到了调用基于Tensorflow的keras模型出错的问题。 出现的错误信息类似于以下: ValueError: Ten...

Python实现快速排序算法及去重的快速排序的简单示例

快速排序由于排序效率在同为O(N*logN)的几种排序方法中效率较高,因此经常被采用。 该方法的基本思想是: 1.先从数列中取出一个数作为基准数。 2.分区过程,将比这个数大的数全放到它...

Python中logging实例讲解

Python中logging实例讲解

logging 的基本用法网上很多,这里就不介绍了。在引入正文之前,先来看一个需求: 假设需要将某功能封装成类库供他人使用,如何处理类库中的日志? 数年前在一个 C# 开发的项目中,我用...

python opencv将图片转为灰度图的方法示例

python opencv将图片转为灰度图的方法示例

使用opencv将图片转为灰度图主要有两种方法,第一种是将彩色图转为灰度图,第二种是在使用OpenCV读取图片的时候直接读取为灰度图。 将彩色图转为灰度图 import cv2 im...