Python复习小记 第六章 字典与集合

6.1 字典的概念

在现实生活中,字典可以查询某个词的语义,即词与语义建立了某种关系,通过词的索引便可以找到对应的语义,如图所示。
在这里插入图片描述
在Python中,字典也如现实生活中的字典一样,使用词-语义进行数据的构建,其中词对应键(key),词义对应值(value),即键与值构成某种关系,通常将两者称为键值对,这样通过键可以快速找到对应的值。
字典是由元素构成的,其中每个元素都是一个键值对,具体示例如下:
在这里插入图片描述
示例中,字典由3个元素构成,元素之间用逗号隔开,整体用大括号括起来。每个元素是一个键值对,键与值之间用冒号隔开,如’name’:‘xiaoqian’,'name’是键,‘xiaoqian’是值。
因为字典是通过键来索引值的,所以键必须是唯一的,而值并不唯一,具体示例如下:
在这里插入图片描述
示例中,字典中有两个元素的键为’name’,有两个元素的值为98.5。若通过print(student)输出字典,则得到以下输出结果:
在这里插入图片描述
从上述结果可看出,如果字典中存在相同键的元素,那么只会保留后面的元素。
另外,键不能是可变数据类型,如列表,而值可以是任意数据类型,具体示例如下:
在这里插入图片描述
上述语句在程序运行时会引发错误。
通过上面的学习,可以总结出字典具有以下特征:
字典中的元素是以键值对的形式出现的。
键不能重复,而值可以重复。
键是不可变数据类型,而值可以是任意数据类型。

6.2 字典的创建

了解了字典的概念后,接下来创建一个字典,具体示例如下:
在这里插入图片描述
上述语句创建了一个空字典,也可以在创建字典时指定其中的元素,具体示例如下:
在这里插入图片描述
字典中值可以取任何数据类型,但键必须是不可修改的,如字符串、元组,具体示例如下:
在这里插入图片描述
此外,还可以使用dict()来创建字典,如例所示。
在这里插入图片描述
此外,dict()还可以通过设置关键字参数创建字典,如例所示。
在这里插入图片描述

6.3 字典的常用操作

在实际开发中,字典使得数据表示更加完整,因此它是应用最广的一种数据类型。想要熟练运用字典,就必须熟悉字典中常用的操作。

6.3.1 计算元素个数

字典中元素个数可以通过len()函数来获取,如例所示。
在这里插入图片描述
运行结果如图所示。
在这里插入图片描述

6.3.2 访问元素值

列表与元组是通过下标索引访问元素值,而字典是通过元素的键来访问值,如例所示。
在这里插入图片描述
有时不确定字典中是否存在某个键而又想访问该键对应的值,则可以通过get()函数实现,如例所示。
在这里插入图片描述
运行结果如图所示。
在这里插入图片描述

6.3.3 修改元素值

字典中除了通过键访问值外,还可以通过键修改值,如例所示。
在这里插入图片描述
运行结果如图所示。
在这里插入图片描述

6.3.4 添加元素

通过键修改值时,如果键不存在,则会在字典中添加该键值对,如例所示。
在这里插入图片描述
此外,还可以通过update()函数修改某键对应的值或添加元素,如例所示。
在这里插入图片描述
运行结果如图所示。
在这里插入图片描述

6.3.5 删除元素

删除字典中的元素可以通过“del 字典名[键]”实现,如例所示。
在这里插入图片描述
如果想删除字典中所有元素,则可以使用clear()实现,如例所示。
在这里插入图片描述
注意使用“del 字典名”可以删除字典,删除后,字典就完全不存在,如例所示。
在这里插入图片描述
运行结果如图所示。
在这里插入图片描述

6.3.6 复制字典

有时需要将字典复制一份以便用于其他操作,这样原字典数据不受影响,这时可以通过函数copy()函数来实现,如例所示。
在这里插入图片描述
运行结果如图所示。
在这里插入图片描述

6.3.7 成员运算

字典中可以使用成员运算符(in、not in)来判断某键是否在字典中,如例所示。
在这里插入图片描述
运行结果如图所示。
在这里插入图片描述

6.3.8 设置默认键值对

有时需要为字典中某个键设置一个默认值,则可以使用setdefault()函数,如例所示。
在这里插入图片描述
运行结果如图所示。
在这里插入图片描述

6.3.9 获取字典中的所有键

keys()函数可以获取字典中所有元素的键,如例所示。
在这里插入图片描述
运行结果如图所示。
在这里插入图片描述

6.3.10 获取字典中的所有值

values()函数可以获取字典中所有元素键所对应的值,如例所示。
在这里插入图片描述
运行结果如图所示。
在这里插入图片描述

6.3.11 获取字典中所有的键值对

items()函数可以获取字典中所有的键值对,如例所示。
在这里插入图片描述
此外,items()函数与for循环结合可以遍历字典中的键值对,如例所示。
在这里插入图片描述
运行结果如图所示。
在这里插入图片描述

6.3.12 随机删除元素

popitem()函数可以随机返回并删除一个元素,如例所示。
在这里插入图片描述
此外,pop()函数可以根据指定的键删除元素,如例所示。
在这里插入图片描述
运行结果如图所示。
在这里插入图片描述

6.4 集合的概念

集合是由一组无序排列且不重复的元素组成,具体示例如下:
在这里插入图片描述
集合使用大括号表示,元素类型可以是数字类型、字符串、元组,但不可以是列表、字典,具体示例如下:
在这里插入图片描述
使用大括号创建的集合属于可变集合,即可以添加或删除元素。此外,还存在一种不可变集合,即不允许添加或删除元素。
接下来演示创建这两种集合的方法,如例所示。
在这里插入图片描述集合的一个重要用途是将一些数据结构中的重复元素去除,如例所示。

在这里插入图片描述
运行结果如图所示。
在这里插入图片描述

6.5 集合的常用操作

同其他数据类型类似,集合也有一系列常用的操作,例如添加元素、删除元素等。通过这些操作,可以很方便地处理集合。

6.5.1 添加元素

集合中添加元素可以使用add()和update()函数,如例所示。
在这里插入图片描述
运行结果如图所示。
在这里插入图片描述

6.5.2 删除元素

集合中删除元素可以使用remove()和discard()函数,如例所示。
在这里插入图片描述
运行结果如图所示。
在这里插入图片描述

6.5.3 集合运算

集合可以参与多种运算,如表所示。
在这里插入图片描述
接下来演示这些运算的用法,如例所示。
在这里插入图片描述
除了上述运算符外,还可以通过union()、intersection()与difference()函数实现集合的并集、交集与差集,如例所示。
在这里插入图片描述
运行结果如图所示。

在这里插入图片描述

6.5.4 集合遍历

集合可以通过for循环遍历其中的元素,如例所示。
在这里插入图片描述
运行结果如图所示。
在这里插入图片描述

6.6 字典推导与集合推导

字典推导与列表推导相似,它将推导出一个字典,具体示例如下:
在这里插入图片描述
字典推导使用大括号包围,并且需要两个表达式,一个生成key,一个生成value,两个表达式之间使用冒号分隔,结果返回字典。若通过print()打印dict1,则输出结果为:
在这里插入图片描述
上述就是一个简单的字典推导,接下来演示稍微复杂的字典推导,如例所示。
在这里插入图片描述
运行结果如图所示。
在这里插入图片描述

集合推导也与列表推导相似,只需将中括号改为大括号,具体示例如下:
在这里插入图片描述
集合推导将返回一个集合。若通过print()打印set1,则输出结果为:
在这里插入图片描述
接下来演示集合推导的用法,如例所示。
在这里插入图片描述
运行结果如图所示。
在这里插入图片描述

6.7 小案例

6.7.1 案例一

小千、小锋与小明在扣丁学堂上学习几门不同的IT课程,每人已经学习的课时数也不同,现用字典保存每人学习的课程与课时数,统计Python课程的总课时数,具体实现如例所示。
在这里插入图片描述
运行结果如图所示。
在这里插入图片描述

6.7.2 案例二

输入一句英文,统计英文中出现的字母及次数,使用字典保存每个字母及次数,具体实现如例所示。
在这里插入图片描述
运行结果如图所示。
在这里插入图片描述

总结

本章主要介绍了Python中的字典与集合,两者都使用大括号表示。字典中每个元素都是由键与值组成的,其中键为不可变类型,而值可以为任意类型。字典在实际开发中经常使用,大家应熟练掌握其常用操作。集合是由一组无序排列且不重复的元素组成的,经常用于去重。集合在实际开发中使用不多,大家只需了解即可。

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值