python二级考试操作题9_第1页
python二级考试操作题9_第2页
python二级考试操作题9_第3页
python二级考试操作题9_第4页
python二级考试操作题9_第5页
已阅读5页,还剩10页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1.101参照代码模板完善代码,实现下述功能。从键盘输入一个整数和一个字符,以逗号隔开,在屏幕上显示输出一条信息。示例如下:输入10,输出 10 输入输出示例输入输出示例 110, 10 习题讲解答案:a,x = input().split(,) # 请输入1个整数和1个符号,逗号隔开print(x*eval(a),a,x*eval(a)要点:1. 输入两个值组成的字符串,要用split()分割开2.同时赋值给两个变量3.利用eval得到数值做运算,给字符做乘法,得到需要的格式2.102参照代码模板完善代码,实现下述功能。从键盘输入一个由 1 和 0 组成的二进制字符串 s,转换为八进制数输出显示在屏幕上,示例如下:输入:1100输出:转换成八进制数是:14输入输出示例输入输出示例 1110014习题讲解答案:s = input() # 请输入一个由1和0组成的二进制数字串d = 0while s: d = d*2 + (ord(s0) -ord(0) s = s1:print(转换成八进制数是::o.format(d)要点:1.print和format的格式用法,字符串的内置处理函数,切片2.理解数据类型及其转换3.103参照代码模板完善代码,实现下述功能。文件 data.txt 文件中有多行数据,打开文件,读取数据,并将其转化为列表。统计读取的数据,计算每一行的总和、平均值,在屏幕上输出结果。文件内容示例如下:Chinese: 80,Math:85,English:92, Physical: 81,Art:85,Chemical:88屏幕输出结果示例如下:总和是:511.0,平均值是:85.17输入输出示例输入输出示例 1从文件data.txt中读取总和是:511.0,平均值是:85.17习题讲解答案:fi = open(data.txt, r)for l in fi: l = l.split(,) s = 0.0 n = len(l) for cours in l: items = cours.split(:) s += eval(items1) print(总和是:,平均值是::.2f.format(s,s/n)fi.close()4.201参照代码模板完善代码,实现下述功能,不得修改其它代码。使用 turtle 库的 turtle.circle() 函数和 turtle.seth() 函数绘制同心圆套圈,最小的圆圈半径为 10 像素,不同圆圈之间的半径差是 40 像素,效果如下图所示。-自动评阅说明使用字符串形式输出 _,_,_中应填代码即可以自动评阅得分例如,如果代码为:# 代码模板 | # 你的代码import turtle | import turtled = 0 | d = 0for i in range(_1_): | for i in range(1): turtle.fd(_2_) | turtle.fd(100) turtle._3_ | turtle.fd(100 + (i * 3)turtle.seth(d) | turtle.seth(d)则在提交代码页面输入:print(1, 100, fd(100 + (i * 3)提交后即可以查看得分注:如果有运算符,请在运算符两侧加上空格习题讲解答案:# 请在_处填写一行代码# 请不要修改其他代码import turtler = 10dr = 40head = 90for i in range (4): turtle.pendown() turtle.circle(r) r += dr turtle.penup() turtle.seth(-head) turtle.fd(dr) turtle.seth(0)turtle.done()要点:1. 同心圆主要问题是要挪动画笔,用到 pendown 和 penup2. 用循环来处理重画的个数5.202参照代码模板完善代码,实现下述功能。从键盘输入一个中文字符串变量 s,内部包含中文标点符号。问题1:(8分)用 jieba 分词,计算字符串 s 中的中文词汇个数,不包括中文标点符号。显示输出分词后的结果,用”/ ”分隔,以及中文词汇个数。示例如下:输入:工业互联网”实施的方式是通过通信、控制和计算技术的交叉应用,建造一个信息物理系统,促进物理系统和数字系统的融合。输出:工业/ 互联网/实施/ 的/ 方式/是/ 通过/ 通信/控制/ 和/ 计算技术/的/ 交叉/ 应用/建造/ 一个/ 信息/物理/ 系统/ 促进/物理/ 系统/ 和/数字/ 系统/ 的/融合/中文词语数是:27问题2:(7分)在问题1的基础上,统计分词后的词汇出现的次数,用字典结构保存。显示输出每个词汇出现的次数,以及出现次数最多的词汇。如果有多个词汇出现次数一样多,都要显示出来。示例如下:继续输出:控制: 1物理: 2通信: 1交叉: 1互联网: 1和: 2是: 1计算技术: 1一个: 1的: 3数字: 1促进: 1信息: 1方式: 1建造: 1应用: 1系统: 3通过: 1实施: 1融合: 1工业: 1出现最多的词是(的 系统):3 次输入输出示例输入输出问题 1“工业互联网”实施的方式是通过通信、控制和计算技术的交叉应用,建造一个信息物理系统,促进物理系统和数字系统的融合。中文词语数是:27问题2控制: 1物理: 2通信: 1交叉: 1互联网: 1和: 2是: 1计算技术: 1一个: 1的: 3数字: 1促进: 1信息: 1方式: 1建造: 1应用: 1系统: 3通过: 1实施: 1融合: 1工业: 1出现最多的词是(的 系统):3 次习题讲解答案:#请在.处填写多行表达式或语句#可以修改其他代码import jieba# s = “工业互联网”实施的方式是通过通信、控制和计算技术的交叉应用,建造一个信息物理系统,促进物理系统和数字系统的融合。s = input(请输入一个中文字符串,包含逗号和句号:)s = s.replace(,,).replace(。,).replace(、,).replace(“,).replace(”,)k=jieba.lcut(s)d1 = maxc = 0wo = for i in k: print(i, end= / ) d1i = d1.get(i,0) + 1print(n中文词语数是:.format(len(k)for key in d1: if maxc d1key: wo = key maxc = d1key elif maxc = d1key: wo += + key print(: .format(key,d1key)print(出现最多的词是(): 次.format(wo, maxc)要点:1. 用 jieba 分词处理词汇统计2. 要处理掉输入的各种标点符号,用到replace()3. 用字典保存各个词出现次数4. 要遍历字典的键值对,找到最大的值,及其对应的键6.301一个人脸识别研究小组对若干名学生做了人脸识别的测试,将测试结果与被测试者的现场照片组合成文件名,写到了一个文件 dir_100.txt 中,每行是一个文件名的信息,示例如下:1709020621, 0_116.jpg1709020621_115.jpg1770603107, 1770603105, 0, 0_1273.jpg文件名各部分含义如下:识别出学号1, 识别出学号2,0表示检测到人脸但未识别出人_照片的顺序编号.jpg测试过程中,一个学生可能被抓拍到多张照片中,所以会在多个文件名中被识别,学号出现在多个文件名中;一张照片中,可能有多个人脸,但有些分辨率不够而识别不出来,文件名位置用0代替学号。使用字典和列表型变量进行数据分析,最终获取实际参加测试的学生人数和人均被测次数。(1)读入 dir_300.txt 文件的内容,处理每一行文件名信息。将文件名中的学号内容以列表形式保存,丢掉0的字串;照片的顺序编号作为字典的关键字,学号列表作为字典的值。转换后,显示字典中的每行信息,示例如下:116:1709020621115:1709020621117:17090206211273: 1770603107,1770603105(2)将该字典中的学号提取出来,构造另一个字典,以学号作为字典的关键字,累计学号出现的次数,将累计值作为字典的值。格式示例如下:1709020621:31770603107:11770603105:1(3)累计字典中关键字的个数,即为实际参加测试的学生人数;累加每个关键字对应的值,即为所有学号测试次数;与实际测试人数之比,即为人均被测次数。将实际参加测试人数和人均被测次数显示输出在屏幕上,示例如下:实际参加测试的人数是:1024人均被测次数是:2.7输入输出示例输入输出问题 1从文件dir_50.txt读入实际参加测试的人数是:1024人均被测次数是:2.7自动评阅提示:输出最终结果即可,中间结果不需要输出习题讲解答案:#P301-1.py#请在.处填写多行表达式或语句#可以修改其他代码picd = numd = fi = open(dir_50.txt,r)for l in fi: l=l.replace(n,).split(_)# print(l1) if l0 != : lkey,lvalue = l1:-4,eval(l0) lval = for v in lvalue: if v != 0: lval.append(v) if lval: lv= ,.join(lval) print(:.format( lkey,lv) picdlkey = lvfi.close()idd = for key in picd: ids = picdkey.split(,) for num in ids: iddnum = idd.get(num,0) +1 #print(num,iddnum)s = 0for key in idd: s += int(iddkey) # print(:.format(key, iddkey)count = len(idd)print(实际参加测试的人数是:,count)print(人均被测次数是::.1f.format(s/count)要点:1. 这是一个实际问题,解决问题的方法有实际的推广意义。问题的关键是要完成数据提取,然

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论