前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Python入门(11)

Python入门(11)

作者头像
高一峰
发布2020-09-22 09:51:21
2K0
发布2020-09-22 09:51:21
举报
文章被收录于专栏:高渡号外
Python入门(11/18)

第十一节 字典

大家好!今天我们学习Python的字典,它仍然是Python四大数据结构之一,也是很特别的一种数据类型。

1、字典

字典(dict)是Python语言中唯一的映射类型的序列。字典对象的值是可变的,它是一个容器类型,能存储任意个数的Python对象,也可以嵌套其他对象。

1、与其他序列类型的数据相比,字典存取和访问数据的方式不同。

2、其他序列类型是有序的,实际上隐含了数字类型的键(索引标号)。

3、字典是无序的,键和值成对出现,依赖于键来索引值。

4、字典的键不可更改,可以使用数字、字符串、元祖,一般用字符串作键。

5、键和值具有映射关系,因为键的唯一性,使得字典内的对象不重复。

2、创建一个字典

字典(dict)是由键和值组成的“键值对”的集合。

说明:

1、键与值用冒号隔开(:),每个键值对用逗号分割,整体放在花括号中{}。

2、键必须唯一,且不可更改。所以,凡是支持原处更改的类型不能作为键,如list、dict和set等,可以是数字、字符串和元组。

3、值不必唯一,可以取任何数据类型,甚至字典嵌套。

4、字典不是一个序列,它的内部看起来是无序的。但支持排序。

3、字典的增、删、改、查:【增】

我们可以直接或通过dict.setdefault()方法,向字典追加键值对。

说明:

1、直接通过给新的键赋值的方法,可以直接为字典追加新的键值对。

2、使用setdefault()方法也可以向字典追加新的键值对,并返回当前追加的值。

3、如果dict.setdefault()方法追加的键已经存在,则不会追加,仅返回该键对应的值

4、字典的增、删、改、查:【删】

使用del、pop()和clear()方法,可以删除一个或全部的键值对。

说明:

1、del方法通过指定键,可以直接删除该键对应的键值对。

2、使用pop()方法也可以删除字典指定键的键值对,并返该键对应的值。

3、字典通过clear()方法,将全部清空所有键值对。

5、字典的增、删、改、查:【改】

通过指定键或update()函数的方法,可以直接间接地修改某个键值对。

说明:

1、字典通过指定键方法可以直接修改对应的值。

2、使用update()函数也可以将一个新的字典的值,更新到指定的字典。遇到相同的键,修改其值,不同则追加。

3、也可以将一个元组的列表作为update()函数的参数,用来更新一个指定的字典。

6、字典的增、删、改、查:【查1】

字典不再使用下标索引来访问,而是使用键来访问对应的值。

说明:

1、不能使用下标索引的方法来访问字典中的值。

2、键和值一一对应,可以通过键访问对应的值。

3、字典中不允许有相同的键,如果重复添加了,内存中仅保留后面的键值。

7、字典的增、删、改、查:【查2】

使用dict.keys()、dict.values()、dict.items()方法,分别查询所有键、值和键值对。

说明:

1、dict.keys()方法返回一个doct_keys对象,该对象包含字典的所有键的列表。

2、dict.values()方法返回一个doct_values对象,该对象包含字典的所有值的列表。

3、dict.items()方法返回一个doct_items对象,该对象包含由字典的所有键值对组成的元组的列表。

8、字典的迭代

使用for key in dict迭代语句,可以方便地遍历一个字典的所有键值对。

9、字典的合并

在python3中,使用update()函数即可轻松实现两个字典的合并。

前面的介绍已经知道,如果dict2中存在dict1中的键值,将会用dict2中的值,替代dict1中的值,而不是追加。这样,当两个dict合并时,能够形成完美的叠加,而不会出现有重复的键值对。

10、字典的排序

在python中,字典看起来是无序的,使用sorted()函数可实现排序。

函数sorted()对所有可迭代的对象进行排序。

sorted(req,key=lambda x : x)有两个参数,第一个req,为一个可排序的对象,第二个key,是要被排序的目标,此处为lambda表达式。

11、字典的常用内置函数或方法

Python字典有如下常用内置函数和方法。请注意,我们有时在网上查找到的函数或方法,使用时会报错,很可能是版本问题。

len(dict) #返回字典的长度(键值对的个数)

dict.clear() #删除字典内所有元素

dict.copy() #返回一个字典的浅复制

dict.get(key, default) #返回指定键的值,如果键不存在,返回default值

dict.setdefault(key, val) #和get()类似,但如果键不存在,则添加该键值对

dict.items() #以列表返回可遍历的(键, 值) 元组数组

dict.keys() #返回一个字典所有的键的列表

dict.update(dict2) #把字典dict2的键/值对更新到dict里

dict.values() #以列表返回字典中的所有值

小结

这节课,我们详细介绍了字典(dict)的创建和使用方法。

预告

下节课,我们将继续介绍Python数据结构:集合,它是Python中又一个最常用的数据结构之一,也是我们集中介绍的最后一种数据结构。集合最常用的场景就是“去重”和集合运算(并集、交集和差集),它与我们初中数学中学到的集合概念非常类似。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2019-06-27,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 高渡号外 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
大数据
全栈大数据产品,面向海量数据场景,帮助您 “智理无数,心中有数”!
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档