基本信息
文件名称:《Python程序设计》课件——第5讲 组合数据类型.pptx
文件大小:1.71 MB
总页数:66 页
更新时间:2025-04-04
总字数:约3.29千字
文档摘要

第5讲组合数据类型(列表、元组);学习目标;本讲要点;5.1认识组合数据类型;5.1认识组合数据类型;常用的序列类型有字符串、列表和元组。

Python中的序列支持双向索引:正向递增索引和反向递减索引正向递增索引从左向右依次递增,第一个元素的索引为0,第二个元素的索引为1,以此类推;反向递减索引从右向左依次递减,从右数第一个元素的索引为-1,第二个元素的索引为-2,以此类推。;Python集合具备确定性、互异性和无序性三个特性。

Python要求放入集合中的元素必须是不可变类型,Python中的整型、浮点型、字符串类型和元组属于不可变类型,列表、字典及集合本身都属于可变的数据类型。;映射类型以键值对的形式存储元素,键值对中的键与值之间存在映射关系。字典(dict)是Python唯一的内置映射类型,字典的键必须遵守以下两个原则:;5.2列表;列表:按照一定线性顺序排列而成的数据项的集合。

Python中列表可以存储不同类型的数据。

例如:;Python列表的创建方式:

(1)直接使用中括号“[]”创建

(2)使用内置的函数list()快速创建,如果设置参数,则必须为可迭代对象。;可迭代对象:支持通过for…in…语句迭代获取数据的对象。目前,我们学习过可迭代的类型有字符串和列表,后续学习的集合、字典、文件也是可迭代类型的对象。

使用isinstance()函数可以判断目标是否为可迭代对象,返回True表示为可迭代对象。

fromcollections.abcimportIterable

ls=[1,2,3]

print(isinstance(ls,Iterable))

;列表索引:可以正向、逆向索引

正向:0~列表长度-1;

逆向:-1~-列表长度

我们可以通过下标索引的方式来访问列表中的值。;列表中的元素的访问方法:索引、切片、循环遍历。;向列表中添加元素:append()、extend()、insert()方法。;列表的排序是将元素按照某种规定进行排列。

list常用的排序方法:sort()、reverse(),Python3内置函数sorted()。;5.2.4元素排序;删除列表元素的常用方式:del语句、remove()方法、pop()方法和clear()方法。;列表推导式:符合Python语法规则的复合表达式,它用于以简洁的方式根据已有的列表构建满足特定需求的列表。列表推导式的基本格式如下:;5.2.6列表推导式;5.3元组;元组(tuple):是关系数据库中的基本概念,关系是一张表,表中的每行(即数据库中的每条记录)就是一个元组,每列就是一个属性。

在二维表里,元组也称为行。

Python中元组构建方式:圆括号“()”、内置函数tuple()构建元组。;当使用圆括号“()”创建元组时,如果元组中只包含一个元素,那么需要在该元素的后面添加逗号,从而保证Python解释器能够识别其为元组类型。;元组访问:索引、切片、循环遍历。

索引可以正向、逆向;5.4精彩实例;为丰富校园文化生活,学校拟组织一场歌手大赛,从参赛选手中选拔出十名相对突出的学生,授予“校园十大歌手”称号。比赛之中设置有评委组,每名选手演唱完毕之后会由评委组的十名评委打分。为保证比赛公平公正,防止作弊和恶意打分,计算得分时会先去掉最高分和最低分,再计算平均分。

本实例要求编写程序,实现根据需求计算平均分的功能。

;魔方阵又称纵横图,是一种n行n列、由自然数1~n×n组成的方阵,该方阵中的数符合以下规律:

1. 方阵中的每个元素都不相等。

2. 每行、每列以及主、副对角线上的个元素之和都相等。

本实例要求编写程序,输出一个5行5列的魔方阵。;5.4.2神奇魔方阵;5.4.2神奇魔方阵;5.4.2神奇魔方阵;补充:图书信息;5.9本章小结;第5讲组合数据类型2(集合、字典);学习目标;本讲要点;5.5集合;集合:集合(set)是一个无序的不重复元素序列。

Python的集合(set)本身是可变类型,但Python要求放入集合中的元素必须是不可变类型。

创建方式:大括号“{}”、内置函数set();注意:不能使用{}创建空集合({}用于创建空字典),空集合只能利用set()函数创建。;5.5集合;集合是可变的,集合中的元素可以动态增加或删除。Python提供了一些内置方法来操作集合,常见内置方法如下:

s.add(x):将元素x添加到集合s中,如果元素已存在,则不进行任何操作

s.remove(x):将元素x从集合s中移除,如果元素不存在,则会发生错误。

s.discard(x):移除集合中的元素,且如果元素不存在,不会发生错误。

x=s.pop():随机删除集