首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
考生文件夹下存在3个Python源文件,分别对应3个问题;1个文本文件,作为本题目输入数据,请按照源文件内部说明修改代码,实现以下功能: 《卖火柴的小女孩》是丹麦童话故事作家安徒生的一篇童话故事,发表于1846年。主要讲了一个卖火柴的小女孩在富人阖
考生文件夹下存在3个Python源文件,分别对应3个问题;1个文本文件,作为本题目输入数据,请按照源文件内部说明修改代码,实现以下功能: 《卖火柴的小女孩》是丹麦童话故事作家安徒生的一篇童话故事,发表于1846年。主要讲了一个卖火柴的小女孩在富人阖
admin
2020-04-10
41
问题
考生文件夹下存在3个Python源文件,分别对应3个问题;1个文本文件,作为本题目输入数据,请按照源文件内部说明修改代码,实现以下功能:
《卖火柴的小女孩》是丹麦童话故事作家安徒生的一篇童话故事,发表于1846年。主要讲了一个卖火柴的小女孩在富人阖家欢乐、举杯共庆的大年夜冻死在街头的故事。这里给出《卖火柴的小女孩》的一个网络版本文件,文件名为“小女孩.txt”。
问题1:在PY301—1.py文件中修改代码,对“小女孩.txt”文件进行字符频次统计,输出频次最高的中文字符(不包含标点符号)及其频次,字符与频次之间采用英文冒号”:”分隔,将输出结果保存在考生文件夹下,命名为"PY301—1.txt"。示例格式如下:
的:83
试题程序:
#以下代码为提示框架
#请在…处使用一行或多行代码替换
#请在________处使用一行代码替换
#注意:提示框架代码可以任意修改,以完成程序功能为准
fo=open(”PY3 01—1.txt”,”w”)
d={}
fo.write(”{}:{}”.format(__________))
fo.close()
问题2:在PY301—2.py文件中修改代码,对“小女孩.txt”文件进行字符频次统计,按照频次由高到低,输出前10个频次最高的字符,不包含回车符,字符之间无间隔,连续输出,将输出结果保存在考生文件夹下,命名为“PY301—2.txt”。示例格式如下:
,的一…(后略,共10个字符)
试题程序:
#以下代码为提示框架
#请在…处使用一行或多行代码替换
#注意:提示框架代码可以任意修改,以完成程序功能为准
fo=open(”PY301一2.txt”,“w”)
d={}
ls=list(d.items())
ls.sort(key=lambda x:x[1],reverse=True)#此行可以按照词频由高到低排序
问题3:在PY301一3.py文件中修改代码,对“小女孩.txt”文件进行字符频次统计,将所有字符按照频次从高到低排序,字符包括中文、标点、英文等符号,但不包含空格和回车。将排序后的字符及频次输出到考生文件夹下,文件名为“小女孩一频次排序.txt”。字符与频次之间采用英文冒号”:”分隔,各字符之间采用英文逗号”,”分隔,参考CSV格式,最后无逗号,文件内部示例格式如下:
着:30,那:29,火:29
试题程序:
#以下代码为提示框架
#请在…处使用一行或多行代码替换
#注意:提示框架代码可以任意修改,以完成程序功能为准
d={}
ls=list(d.items())
ls.sort(key=lambda x:x[1],reverse=True)}}此行可以按照词频由高到低排序
…
选项
答案
(1)fi=open("小女孩.txt","r") fo=open(”PY301—1.txt”,”w”) txt=fi.read() d= {} exclude=",。!?、()【】<>《》=:+-*-“”…" for word in txt: if word in exclude: continue else: d[word]=d.get(word,0)+1 ls=list(d.items()) ls.sort(key=lambda x:x[1],reverse=True) fo.write(”{}:{}”format(ls[0][0],ls[0][1])) fo.close() (2)fi=open("小女孩.txt","r") fo=open(”PY301—2.txt”,”w”) txt=fi.read() d= {} for word in txt; d[word]=d.get(word,0)+1 del d["\n"] ls=list(d.items()) ls.sort(key=lambda x:x[1],reverse=True)#此行可以按照词频由高到低排序 for i in range(10); fo.write(ls[i][0]) fi.close() fo.close() (3) fi = open ("小女孩.txt","r") fo =open(小女孩-频次排序。txt","w") txt =fi.read() d = {} for word in txt d[word]=d.get(word,0)+1 del d[""] del d["\n"] ls=list(d.items()) ls.sort(key=lambda x:x[1],reverse=True)#此行可以按照词频由高到低排序 for i in range(len(ls)): ls[i]="{}:{}".format(ls[i][0],ls[i][1]) fo.write(",".join(ls)) fi.close() fo.close()
解析
(1)首先使用open()函数打开文件“小女孩.txt”,把文件的内容通过read()方法保存到变量txt中;定义一个字符串变量exclude用来存放标点符号。然后用for循环遍历txt中的每个字符(word),并使用if条件进行判断,若该字符在变量exclude中,说明该字符为标点符号,跳出该循环;否则将该字符作为字典d中的一个键,该键所对应的值置为1,在后面循环中只要遍历的字符与该键相同,就将该键对应的值加1。
ls=list(d.items())表示将字典类型变成列表类型,字典中的每个键值对对应列表中的一个元组。随后,对列表ls中的元组进行排序,用到sort()方法,参数“key=lambda.x:x[1]”中lambda是一个隐函数,是固定写法,不能写成别的单词;x表示列表中的一个元素,在这里表示一个元组,x只是临时起的一个名字,也可以使用任意的名字;x[1]表示以元组中第二个元素排序。sort()方法的第二参数表示是按哪种方式排序,若为“reverse=True”表示按降序排序;若该参数缺省或“reverse=False”,表示按升序排序。
排序后,列表ls中第一个元组中即为频次最高的中文字符和频次,ls[0][0]表示该字符,ls[0][1]表示其频次,将这两个元素通过“:”连接写入文件“PY301—1.txt”中。
(2)问题2和问题1的区别在于统计的字符包含标点符号,因此不需要设置字符串变量exclude和使用if条件语句进行判断;题目要求不包含回车符,因此需要使用del删除字典d中键为”\n”的元素。最后要无间隔输出前10个频次最高的字符,需要对排序好的列表ls进行for循环遍历,找到前10个元组的第一个元素,并将其直接写入到文件“PY301—2.txt”中。
(3)问题3和问题2的区别在于统计的字符中不能包含空格,因此需要使用del删除字典d中键为空格的元素。最后要将所有字符和其频次输出,需要对排序好的列表ls进行for循环遍历,遍历列表中的每个元组,并将元组中的两个元素通过“:”连接,再用逗号分隔每个字符写入到文件“小女孩一频次排序.txt”中。
转载请注明原文地址:https://kaotiyun.com/show/g86p777K
本试题收录于:
二级Python题库NCRE全国计算机二级分类
0
二级Python
NCRE全国计算机二级
相关试题推荐
打开数据库的命令是()。
在考生目录下完成下列操作:(1)用SQL语句完成下列操作:列出所有赢利(现价大于买入价)的股票简称、现价、买入价和持有数量,并将检索结果按持有数量降序排序存储于表stock_temp中。(2)使用一对多报表向导建立报表。要求:父表为st
SQL语句中删除视图的命令是()。
打开已经存在的表单文件的命令是()。
表单名为myForm的表单中有一个页框myPageFrame,将该页框的第3页(Page3)的标题设置为“修改”,可以使用代码()。
在“项目管理器”下为项目建立一个新报表,应该使用的选项卡是()。
在软件设计中不使用的工具是()。
设有学生(学号,姓名,性别,出生日期)和选课(学号,课程号,成绩)两个关系,并假定学号的第3、4位为专业代码。要计算各专业学生选修课程号为“101”课程的平均成绩,正确的SQL语句是()。
开发大型软件时,产生困难的根本原因是()。
层次型、网状型和关系型数据库划分原则是
随机试题
由计算器算得的结果为12.004471,按有效数字运算规则,应将结果修约为()。
有关Coats病的叙述,错误的是
贫血性疾病的治疗包括
A.耐受性B.耐药性C.成瘾性D.习惯性E.快速耐受性长期用药后突然停药发生严重的生理功能紊乱()。
碧海实业有限公司等3家国有企业,拟设立一家以高新技术产业为主的新奇股份有限公司。新奇公司拟筹集股本总额4亿元,其中,发起人碧海公司拟以厂房、设备、专利技术、土地使用权和部分现金作出资,并将成为新奇公司第一大股东。3家发起人为筹办新奇股份公司,共同制订了公司
采用静态评价方法对互斥型投资方案进行经济效果评价,经常不能充分反映( )。
面对一棵大树,一位教授算了两笔不同的账:算法一,一棵正常生长50年的大树,按当时市价计算最高能卖2000元。算法二,从大树生产氧气,减少大气污染,涵养水源,为鸟类与其它动物提供栖息环境的生态效益计算,其价值最低为130万元,该教授的算法二强调了:
在大型项目或多项目实施的过程中,负责实施的项目经理对这些项目大都采用(57)的方式。投资大、建设周期长、专业复杂的大型项目最好采用(58)的组织形式或近似的组织形式。
ReadthefollowingreviewsofabookcalledTheBossesSpeak.Foreachquestion23-28,choosethecorrectanswer.Markl
Forthispart,youareallowed30minutestowriteashortessay.Youshouldstartyouressaywithabriefdescriptionofthepi
最新回复
(
0
)