学习目标
掌握元祖和字典的格式
掌握元祖与字典的数据类型
掌握元祖和字典的常用方法
元祖的介绍
python中的元祖与列表类似,不同之处在于元祖的元素不可修改。元祖使用小括号,列表使用方括号
<1>访问元祖 执行结果:
<2>修改元祖 执行结果:
说明:python中不允许修改元祖的数据,包括不能删除其中的值
<3>元祖的内置函数count、index
index和count与字符串和列表中的用法相同
例子: 结果:
字典的介绍
想一想:如果有列表 nameList = ['xiaoZhang', 'xiaoWang', 'xiaoLi'];需要对"xiaoWang"这个名字写错了,通过代码修改: nameList[1] = 'xiaoxiaoWang'如果列表的顺序发生了变化,如下 nameList = ['xiaoWang', 'xiaoZhang', 'xiaoLi'];此时就需要修改下标,才能完成名字的修改 nameList[0] = 'xiaoxiaoWang'有没有方法,既能存储多个数据,还能在访问元素的很方便就能够定位到需要的那个元素呢?答:字典
另一个场景:学生信息列表,每个学生信息包括学号、姓名、年龄等,如何从中找到某个学生的信息?
<1>生活中的字典
<2>软件开发中的字典
变量info为字典类型: info = {'name':'班长', 'id':100, 'sex':'f', 'address':'地球亚洲中国北京'}说明:'name':'班长'----> 键值对字典和列表一样,也能够存储多个数据列表中找某个元素时,是根据下标进行的字典中找某个元素时,是根据'名字'(就是冒号:前面的那个值,例如上面代码中的'name'、'id'、'sex')字典的每个元素由2部分组成,键(key):值(value)。例如 'name':'班长' ,'name'为键(key),'班长'为值(value)
<3>根据键访问值
假设:若访问不存在的键,会出现什么情况呢?
想一想:假如我们不确定字典中是否存在某个键而又想获取其值时,如何操作呢?答案:可以使用get()方法。
想一想:如果info中不存在'age'这个键, 我就让它返回默认值18,能否操作?答:能操作!!!
字典的常见操做
<1>修改元素字典的每个元素中的数据是可以修改的,只要通过key找到,即可修改
<2>添加元素
访问不存在的元素
如果在使用 变量名['键'] = 数据 时,这个“键”在字典中,不存在,那么就会新增这个元素
<4>删除元素 对字典进行删除操作,有一下几种:(1)del(2)clear() ---- 清空
del删除指定的元素(删除后不能访问,否则会报错)
del删除整个字典
clear清空整个字典
字典的常见操作(升级)
<1>len()测量字典中,键值对的个数
<2>keys返回一个包含字典所有KEY的列表
<3>values返回一个包含字典所有value的列表
<4>items返回一个包含所有(键,值)元祖的列表
常见的遍历操作
遍历通过for ... in ... 我们可以遍历字符串、列表、元组、字典等注意python语法的缩进字符串遍历
列表的遍历
元祖的遍历
字典的遍历遍历字典的key(键)
遍历字典的value(值)
遍历字典的items(元素)
遍历字典的items(键值对)
想一想:如何实现带下标索引的遍历?
如何实现带下标索引的遍历?
enumerate()enumerate() 函数用于将一个可遍历的数据对象(如列表、元组或字符串)组合为一个索引序列,同时列出数据和数据下标,一般用在 for 循环当中。
集合的介绍
集合是无序的,集合中的元素是唯一的,集合一般用于元组或者列表中的元素去重。定义一个空集合set1 = set()# 注意以下写法为一个空字典set2 = {}
添加元素(add,update)addset1 = {1, 2, 4, 5}#添加元素set1.add(8)updateset1 = {1, 2, 4, 5}#是把要传入的元素拆分,做为个体传入到集合中set1.update("abcd")
删除元素(remove,pop,discard)removeset1 = {1, 2, 4, 5}# 使用remove删除集合中的元素 如果有 直接删除 如果没有 程序报错set1.remove(22)popset1 = {1, 2, 4, 5}# 使用pop删除是随机删除集合中的元素 如果set1没有元素讲程序报错set1.pop()
discardset1 = {1, 2, 4, 5}# 使用discard删除 如果元素存在 直接删除 如果元素不存在 不做任何操作set1.discard(2)
集合的交集和并集
交集和并集( & 和 | )交集set1 = {1, 2, 3, 4}set2 = {3, 4, 5, 6}new_set = set1 & set2print(new_set) # {3, 4}并集set1 = {1, 2, 3, 4}set2 = {3, 4, 5, 6}new_set = set1 | set2print(new_set)# {1, 2, 3, 4, 5, 6}
公共方法
运算符
公共方法( + )
公共方法( * )
公共方法( in )(注意,in在对字典操作时,判断的是字典的键)
python内置函数
Python包含了以下内置函数
len() 注意:len在操作字典数据时,返回的是键值对个数。
max()
deldel有两种用法,一种是del加空格,另一种是del()