《Python语言程序设计(工作手册式)【实训题目-含答案】实训6.5.docx》由会员分享,可在线阅读,更多相关《Python语言程序设计(工作手册式)【实训题目-含答案】实训6.5.docx(10页珍藏版)》请在第一文库网上搜索。
1、6.5实训I6.5.1 实训1【字典】一、实训目的1 .掌握字典的声明和使用2 .了解字典键的特性3 .熟悉字典内置函数与方法的使用4 .学会字典的综合应用二、单元练习(-)选择题1.下列哪个函数可以计算字典元素个数B.A.cmpBJenC.strD.type2.下列哪个函数可以将字典以字符串表示输出一_CA.cmpBJenC.strD.type3.下列哪个函数可以返回输入的变量类型_D_A.cmpB.1enC.strD.type4.若想删除字典,该使用以下哪个方法?(B)A.popB.de1C.c1earD.Copy5.下列哪项关于字典的说法正确。(AB)A.键必须唯一,但值则不必。B.列表
2、是方括号,元组是圆括号(),字典是花括号。C.字典中的键是有序的。D.字典的内置函数有dict.c1ear,type(),str(),1en()o(-)填空题1 .每个键与值用_冒号一隔开,每对键值对用_逗号分割,整体放在花括号中。2 .字典是无序的,在字典中通过一键一来访问成员。3 .Py1hon有两种方法可以创建字典,第一种是使用花括号,另一种是使用内建函数_dieto4 .键必须是唯一的,但值则不必。值可以取任何数据类型,但键必须是不可变的,如一字符串,一元组或一数字o5 .字典的键不能是类型。6 .描述出以下字典函数或方法的意义:C1ear:删除集合中的所有元素Keyindiet:键在
3、字典中Keys:返回个字典所有键Va1ues:返回一个字典所有值Pop:删除并返回任意的集合元素7 .假设有列表a=FnameTage丁SeXrI和b=,Weng,18,FeMa1e,请使用一个语句将这两个列表的内容转换为字典,并且以列表a中的元素为“键”,以列表b中的元素为“值”,这个语句可以写为c=dict(zip(a,b)。三、实训任务任务1:【字典基本训练】1 .创建一个名为dic1的字典,其中有元素,abc:456程序编写于下方diet1=,abc,:456)2 .将dic1中的ab456改为abc:123程序编写于下方dict1=abc,:456)dict1abc=132print
4、(dict1)3 .为字典dic1添加新元素,键为:Age,值为:18.程序编写于下方diet1=abc,:456)dict1Age=18print(dict1)4 .删除字典dic1中的元素abc。程序编写于下方dict1=abc,:456)de1dict1,abc,print(dict1)5 .清空字典的所有元素然后将字典删除。程序编写于下方dict1=(abc,:456)de1dict1,abc,dict1.c1ear。de1dict1任务2:【综合训练1】1 .已知字典d=,Adam,:95,1isa:85,Bart,:59)请打印输出:Adam:951isa:85Bart:59程序编
5、写于下方d=Adam,:95,1isa:85,Bart:59)foriind:print(,:().format(i,di)2 .请用for循环遍历如下的diet,打印出姓名:分数来。d=,Adam,:95,1isa,:85,Bart,:59程序编写于下方d=Adam:95,1isa,:85,Bart:59)foriind:print(,:(),.format(i,di)3 .有字典字Ct1=T12),请将字典中的1输出。程序编写于下方dict1=,a:1,2)print(dict1,a,O)4 .有字典dict2=%:“c“:”d”,请将字典中的d输出。程序编写于下方dict2=,a,cf,
6、dprint(dict2,ac)任务3:【综合训练2】1 .die=,k:,v*,k2:“v2,“k3”:11,22,33),请循环输出所有的key,va1ue程序编写于下方die=k1,:v1,k2n:,v2,k3,:11,22,33)fbriindie:print():.format(i,dici)2 .请在字典中添加一个键值对,“k4”:“v4“,输出添加后的字典程序编写于下方die=k:v,k2:v2,k3n:11,22,33)dick4=,v4print(dic)3 .请在修改字典中“k1”对应的值为“a1ex,输出修改后的字典程序编写于下方die=,k:,v1k2:v2,k3:11
7、,22,33dick4=v4dick1=a1exprint(dic)4 .请在k3对应的值中追加一个元素44,输出修改后的字典程序编写于下方die=k1,:v1,k2n:,v2,k3,:11,22,33)dick4=,v4dick,=,a1ex,dick3H=11,22,33,44print(dic)5 .请在k3对应的值的第1个位置插入个元素18,输出修改后的字典程序编写于下方die=(,k1,:,v1,j,k2:,v2,*k3:11j22j33dick4=,v4dick,=,a1ex,dic3=11,22,33,44Iist=dic,k31ist.insert(0,18)dic,k3,=1
8、istprint(dic)任务4:【找最大】要求:找到年龄最大的人,并输出。例如:提示,将输入的信息转化成类似字典:张三F似字四”:60,“王五”:56,“孙六”:7)的结构,然后进行判断大小,然后输出最大的人的信息。程序编写于下方namedic=|age1ist=whi1eTrue:dictext=inputC请输入姓名,年龄(张三:(只输入回车:结束输入):)ifdictext!=:Iistdic=dictext.sp1it(:*)nanedicstr(1istdicO)=int(1istdic1)e1se:breakifnamedic!=):foriinnamedic:age1ist.a
9、ppend(namedici)print(namedic)PrintC年龄最大的是:岁.format(max(namedic,key=namedic.get),max(age1ist)四、拓展任务任务1:【打印数字的重复次数】要求:用户输入一个数字,打印每一位数字及其重复次数。比如:输入数字入8232315,输出结果为:(83),(2,2),(3,2),C果1),(5,1)程序编写于下方count1ist=a1ist=text=input(请输入一串数字:)foriintext:ifinotina1ist:a1ist.append(i)count1ist.append(i,text.count
10、(i)print(count1ist)任务2:【打印数字的重复次数】要求:随机产生10个整数,数字的范围”000,1000,升序输出所有不同的数字及其重复的次数。比如:产生的十个随机数字分别为:1,-2,2,3,7,-9,-10,3,-6,7,输出结果为:K-I(U),(91)(6,1),(-2,1),(1,1),(2,1),(3,2),(7,2)程序编写于下方importrandomcount1ist=a1ist=b1ist=text=forwinrange(10):b1ist.append(random.randint(-1000,1000)foriinb1ist:ifinotina1is
11、t:a1ist.append(i)count1ist.append(i,b1ist.count(i)print(count1ist)任务3:【打印字母的重复次数】要求:字符表abcdefghijk1mnopqrstuvwxyz随机挑选2个字母组成字符串,共挑选10个,降序输出所有不同的字符串及重复的次数比如:产生的十个随机字母组成的字符串分别为:ab,ex,gd,ef,oc,jk,gh,bs,py,UV,输出结果为UVY),CpyY)(O1),CjkY),CghY),Cgd,1),(tef,1),(tcx1),(tbs1),Cab,1)程序编写于下方importrandomCoUnuiS1=a
12、1ist=b1ist=text=abcdefghijk1mnopqrstuvwxyz,forwinrange(10):word=textrandom.randint(0,25)+textrandom.randint(0,25)b1ist.append(word)b1ist.sort(reverse=True)foriinb1ist:ifinotina1ist:a1ist.append(i)count1ist.append(i,b1ist.count(i)print(count1ist)任务4:【拼写英文单词】要求:写一个程序,在程序运行时给用户中文提示,要求用户拼写出英文,根据用户的拼写是否正
13、确,确定进行下一个单词的拼写或重新拼写。程序编写于下方importrandomworddic=苹果:app1e:香蕉:banana,西瓜:waterme1on*,tT,orange;钢笔:pen丁盒子,:box)word1ist=苹果香蕉西瓜橘子钢笔盒子randword=text=whi1etext!=0:f1ag=random.randint(0,1en(word1ist)-1)randword=word1istf1agtext=input。请拼写单词uff的英文(全小写)(输入0结束游戏):.format(randword)whi1eTrue:iftext=0:breake1iftext=worddicrandword:PrintC恭喜你答对了!)breake1se:text=input,很遗憾答错了,请重新回答:)程序编写于下方6.5.2实训2【集合】一、实训目的1 .掌握集合的声明和使用2 .掌握集合运算3 .熟练使用集合内置函数与方法4 .学会集合的综合应用二、单元练习(-)填空题1 .在Python中,字典和集合都是用一对作为界定符,字典的每个元素有两部分组成,即和,其中不允许重复。2 .已知:X=SetCChristoper),y=set(k,T,d),执行下列操作后,请将结果填写到横线处。(1) print(x&y)的结果:(2) print(x