资源简介 (共19张PPT)第一节2.1 数 组问题:超市进货时,会将每个商品的条形码输入计算机,顾客付款时,只要扫描条形码,电脑就可根据条形码找到该商品。临近双十一,某超市对20种商品进行特卖,顾客可以通过扫描条形码的方式确定哪些商品参加本次特卖。想一想思考:若用Python实现该功能,此时这20种特卖商品保存在哪?采用什么类型的变量?1.数组是一组具有相同数据类型的变量集合数组的概念与特征2.用一个数组名和下标来唯一确定数组元素d[i]下标/索引数组名数组元素d[0]d[1]d[2]d[3]d[4]d[5]A-300121A-300122A-300123B-300132B-300134E-3001113.创建数组时,被系统分配连续存储空间,数组元素按下标顺序依次存储……数组的特征:1.数组元素的数据类型_________2.通过_________和______对数组元素的值进行访问3.存储空间_________(即使数组中的某些元素已经删除,但其占用的空间仍然保留)4.从空间利用率角度说,数组适用于数据规模可预估且在处理过程中保持稳定的问题。相同数组名下标固定不变学习任务一超市进货时,会将每个商品的条形码输入计算机,顾客付款时,只要扫描条形码,电脑就可根据条形码找到该商品。临近双十一,某超市对20种商品进行特卖,顾客可以通过扫描条形码的方式确定哪些商品参加本次特卖。特卖商品的条形码数据保存在文件tm.xlsx中(部分数据如图所示)。请大家用Python实现此功能。(1)抽象与建模1.用数组d来表示“特价商品条形码”这一列数据,d[0],d[1],d[2]……,d[19]依次表示20个特价商品条形码。2.用变量thing表示顾客购买的商品条形码,每当输入一个商品条形码thing,就要与数组d中的20个特价商品对比,如果相同,则为“特价商品”。(2)设计算法1.读取文件tm.xlsx中特卖商品的信息;2.创建数组d,共20个元素;3.读取特卖商品条形码依次赋值给数组d;4.输入顾客购买的商品条形码,并赋值给thing;5.将thing与特卖商品条形码所在数组d中的元素对比,若相同,输出“该商品参加特卖活动!”否则,输出“对不起,该商品不参加特卖活动!”(3)算法实现1.读取文件tm.xlsx中特卖商品的信息import pandas as pddf=pd.read_excel(“tm.xlsx”) #读取数据_______________________2.创建数组d,共20个元素序号 商品条形码0 1 A-3001211 2 A-3001222 3 A-300123……数组的基本操作——创建直接创建:a=[0,0,0]或a=[0]*3间接创建:a=[0 for i in range(3)]可以理解为:for i in range(3):a=a+[0]aimport pandas as pddf=pd.read_excel(“tm.xlsx”)_______________________d=[“”]*202.创建数组d,共20个元素或d=[“” for i in range(20)](3)算法实现3.读取df中特卖商品条形码依次赋值给数组dimport pandas as pddf=pd.read_excel(“tm.xlsx”)d=[“”]*20k=0for row in df.values:d[k]=row[1]_________________序号 商品条形码0 1 A-3001211 2 A-3001222 3 A-300123……数组的访问:数组名[下标访问]k+=1(3)算法实现4.输入顾客购买的商品条形码,并赋值给thingimport pandas as pddf=pd.read_excel(“tm.xlsx”)d=[“”]*20k=0for row in df.values:d[k]=row[1]k+=1thing=input(“请输入商品条形码:”)5.将thing与特卖商品条形码所在数组d中各元素对比,若相同,输出“该商品参加特卖活动!”;否则,输出“对不起,该商品不参加特卖活动!”thing=input(“请输入商品条形码:”)for i in range(20):if _______________________:print(“该商品参加特卖活动!”)else:print(“对不起,该商品不参加特卖活动!”)thing==d[i]import pandas as pddf=pd.read_excel(“tm.xlsx”)d=[“”]*20k=0for row in df.values:d[k]=row[1]k+=1任务二:若当前状态下,4号B-300132商品优惠到期了,现要从数组d中删除该条形码,那该怎么办?E-300121E-300111B-300134数组的基本操作——删除d[3]B-300132d[0]d[1]d[2]d[4]d[5]A-300121A-300122A-300123B-300134E-300111删除位置k的数据学习任务二:j=kwhile j____________j=j+1d[j]=””d[j]=d[j+1]d[6]E-300121任务三:若当前状态下,B-300131商品要参与优惠打折,现要在数组d中插入该条形码,那该怎么办?d[0]d[1]d[2]d[3]d[4]d[5]新数据插入位置不能直接插入A-300121A-300122A-300123B-300134E-300111E-300121B-300131d[6]E-300111B-300134E-3001210数组的基本操作——插入d[0]d[1]d[2]d[3]d[4]d[5]A-300121A-300122A-300123B-300134E-300121新数据插入位置kB-300131d[6]学习任务三:j=len(d)-2while j>=k_____________j=j-1________________d[j+1]=d[j]d[j+1]=”B-300131”E-300111函数和方法 功能 例子 结果len(list) 统计列表list中元素个数 list=[11,22,33] print(len(list))list.append(x) 在列表list末尾添加元素x list=[11,22,33] list.append(44) print(list)list.insert(i,x) 在列表list中下标为i位置插入元素x list=[“A”,”B”,”C”] list.insert(2,”D”) print(list)list.pop(i) 在列表list中下标i的元素删除;i不指定,默认最后一个 list=[“A”,”B”,”C”] list.pop(2) print(list)以上插入、删除等操作,其实在Python的列表中已将这些功能封装为函数。数组概念与特征概念特征数组元素的数据类型相同数组的存储空间固定不变基本操作数组的创建数组的访问数组的删除、插入通过下标变量对数组的值进行访问 展开更多...... 收起↑ 资源预览