1、 高一高一教科版教科版信息技术信息技术必修一第三单元必修一第三单元3.2 3.2 数据与结构数据与结构学习目标:学习目标:1.了解常见的数据类型。2.了解常见的数据结构。3.了解队列结构及其特点,体验使用Python语言对队列进行操作。任务一:任务一:探究网购订单处理探究网购订单处理数据项数据项商品名称商品名称单价单价数量数量订单中的订单中的数据数据苏东坡传19.903数据数据类型类型 表1活动活动1 1:了解订单数据:了解订单数据在Python语言的开发环境中,利用type()函数查看以下数据的类型:表表1 1图图1 1表1表表1 1图图1 1数据项数据项商品名称商品名称单价单价数量数量订单
2、中的订单中的数据数据苏东坡传19.903数据数据类型类型strstr(字符串字符串)floatfloat(浮点型浮点型)intint(整型整型)在Python语言的开发环境中,利用type()函数查看以下数据的类型:活动活动1 1:了解订单数据:了解订单数据探究数据类型探究数据类型数据类型用来定义一系列值及应用于这些值的一系列操作。数据类型复合数据类型:列表列表(list)(list)、字典(、字典(dictdict)、)、元组元组 (TupleTuple)、集合(、集合(setset)等。)等。简单数据类型:整型(整型(intint)、浮点型()、浮点型(floatfloat)、)、字符串(
3、字符串(strstr)、布尔型()、布尔型(boolbool)等。)等。数据项数据项商品名称商品名称单价单价数量数量订单数据订单数据苏东坡传19.903索引号索引号数据类型数据类型探究列表(探究列表(list)OrderList=“苏东坡传”,19.90,3表表2 2表2字符串浮点型整型012OrderList0OrderList1探究列表(探究列表(list)表表2 2列表数据项数据项商品名称商品名称单价单价数量数量订单数据订单数据苏东坡传19.903索引号索引号数据类型数据类型OrderList=“苏东坡传”,19.90,3表2字符串浮点型整型012OrderList0OrderList1
4、零散孤立的数据结构化的数据组织数据关系思考:如何有效地操作和管理数据?思考:如何有效地操作和管理数据?数据结构是存在特定关系的数据元素的集合,这种特定的关系包括数据的逻辑结构和存储结构。探究数据结构探究数据结构数据结构(逻辑结构)非线性结构:树、图等。线性结构:队列、栈等。数据元素之间的关系:一对一。探究线性数据结构探究线性数据结构前趋元素 当前元素 后继元素 图3.2.2 线性数据结构首元素尾元素 操作特点:先进先出(FIFO:First In First Out)。a0,a1,a2,an出队进队队首队尾探究线性数据结构探究线性数据结构-队列队列实践:如何利用数据结构解决订单数据处理问题实践
5、:如何利用数据结构解决订单数据处理问题 Python中的列表数据类型,可以实现线性结构组织的数据元素的存储和操作。建立列表存储全部订单编号,通过对列表里订单编号的操作来实现对订单的管理。探究探究列表的常见操作列表的常见操作列表操作列表操作功能功能listque.pop(0)删除列表的首元素,并返回该元素的值listque.append(x)在列表尾部添加一个数据元素说明:以变量名为说明:以变量名为listquelistque的列表为例。的列表为例。队列操作队列操作出队进队探究探究列表的常见操作列表的常见操作列表操作列表操作功能功能listque.insert(x,y)将指定数据元素插入列表的指
6、定位置listque.count(x)统计列表数据元素出现的次数len(listque)获取列表的长度说明:以变量名为说明:以变量名为listquelistque的列表为例。的列表为例。订单问题先下单先发货队列先进先出列表具体操作订单问题的抽象过程:订单问题的抽象过程:listque=#定义列表listque存储订单x=0while(x!=4):#当x=!4时,执行循环 print(1.添加订单)print(2.发货)print(3.查看订单列表)print(4.退出)x=int(input(输入你的选择:)#输入选择项 if x=1:y=input(输入订单编号:)#输入订单编号?#在列表l
7、istque中添加订单号 elif x=2:if len(listque)=0:#如果订单列表为空 print(订单列表为空)else:?#删除列表listque的首元素,表示发货 elif x=3:print(等待发货:,listque)#查询列表listque中的订单号 print()活动活动2 2:编制订单数据处理程序:编制订单数据处理程序本节课我们学习了以下知识点:1.常见的数据类型。2.常见的数据结构。3.队列结构及其特点,使用Python语言对队列进行操作(进队、出队、求队长、判队空)。课堂小结课堂小结1.在Python中,以下是简单数据类型的是()。A.tupleB.set C.
8、int D.list练习题C2.以下属于线性数据结构的是()。A.队列 B.树 C.图 D.以上都不是A3.除首元素没有前趋元素、尾元素没有后继元素外,其它元素都只有一个前趋元素和一个后继元素,具有以上特点的数据结构是()。A.树结构 B.图结构 C.线性结构D.集合结构练习题C4.在Python中,以下哪个语句可以定义空列表?()A.Bookset=B.q=C.num=()D.dictionary=dict()B问题:在订单数据处理程序中,可以用在第二单元所学的del命 令来删除订单编号吗?listque=x=0while(x!=4):print(1.添加订单)print(2.发货)prin
9、t(3.查看订单列表)print(4.退出)x=int(input(输入你的选择:)if x=1:y=input(输入订单编号:)listque.append(y)elif x=2:if len(listque)=0:print(订单列表为空)else:print(“发货:”+listque.pop(0)elif x=3:print(等待发货:,listque)print()listque=x=0while(x!=4):print(1.添加订单)print(2.发货)print(3.查看订单列表)print(4.退出)x=int(input(输入你的选择:)if x=1:y=input(输入订单编号:)listque.append(y)elif x=2:if len(listque)=0:print(订单列表为空)else:print(“发货:”+listque0)del listque0 elif x=3:print(等待发货:,listque)print()