首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
《命运》和《寻梦》都是著名科幻作家倪匡的科幻作品。这里给出一个《命运》和《寻梦》的网络版本,文件名为“命运一网络版.txt”和“寻梦一网络版.txt”。 【手机下载文本文件】https://python123.io/ncrebe2/testd8 问题1:请
《命运》和《寻梦》都是著名科幻作家倪匡的科幻作品。这里给出一个《命运》和《寻梦》的网络版本,文件名为“命运一网络版.txt”和“寻梦一网络版.txt”。 【手机下载文本文件】https://python123.io/ncrebe2/testd8 问题1:请
admin
2019-08-30
76
问题
《命运》和《寻梦》都是著名科幻作家倪匡的科幻作品。这里给出一个《命运》和《寻梦》的网络版本,文件名为“命运一网络版.txt”和“寻梦一网络版.txt”。
【手机下载文本文件】https://python123.io/ncrebe2/testd8
问题1:请编写程序,对这两个文本中出现的字符进行统计,字符与出现次数之间用冒号:分隔,将两个文件前100个最常用字符分别输出保存到“命运一字符统计.txt”和“寻梦一字符统计.txt”文件中,该文件要求采用CSV格式存储,参考格式如下(注意,不统计回车字符):
命:90,运:80,寻:70,梦:60
(略)
问题2:请编写程序,对“命运一字符统计.txt”和“寻梦一字符统计.txt”中出现的相同字符打印输出。“相同字符.txt”文件中,字符间使用逗号分隔。
命,运,寻,梦
(略)
选项
答案
问题1答案如下: names=[’’命运’’,’’寻梦’’] for name in names: fi=open(name+’’一网络版.txt’’,’’r’’,encoding=’’uff-8’’) fo=open(name+’’一字符统计.txt’’,’’w’’,encoding=’’uff-8’’) txt=fi.read() d={} for c in txt: d[c]=d.get(c,0)+1 del d[’\n’] ls=list(d.items()) ls.sort(key=lambda x:x[1],reverge=True) for i in range(100): ls[i]=’’{}:{}’’.format(ls[i][0],ls[i][1]) fo.write(’’,’’.join(ls[:100])) fi.close() fo.close() 问题2答案如下: def getList(name): f=open(name+’’一字符统计.txt’’,’’r’’,encoding=’’uff-8’’) words=f.read().split(’,’) for i in range(len(words)): words[i]=words[i].split(’:’)[0] f.close() return words def main(): fo=open(’’相同字符.txt’’,’’w’’) ls1=getList(’’命运’’) ls2=getList(’’寻梦’’) ls3=[] for c in ls1: if c in ls2: ls3.append(c) fo.write(’’,’’.join(ls3)) fo.close() main()
解析
这是一个综合应用题,考核文本处理能力。
问题1:程序的流程是分别从“命运一网络版.txt”和“寻梦一网络版.txt”两个文档中读入字符,统计各自所出现的次数、排序,并输出到文档。鉴于相似功能已经在其他模拟试卷中做过解析。这里不再赘述。参考代码及注释如下:
names=[’’命运’’,’’寻梦’’]
for name in names: #遍历names列表,对两个文本进行处理
fi=open(name+’’一网络版.txt’’,’’r’’,encoding=’’utf一8’’)
fo=open(name+’’一字符统计.txt’’,’’w’’,encoding=’’utf一8’’)
txt=fi.read()
d={}
for c in txt: #统计字符出现的次数
d[c]=d.get(c,0)+1
del d[’\n’]
ls=list(d.items())
ls.sort(key=lambda x:x[1],reverse=True) #排序
for i in range(100): #整理写入文档
ls
=’’{}:{}’’.format(Is
[0],ls
[1])
fo.write(’’,’’.join(ls[:100]))
fi.close()
fo.close()
问题2:判断两个文档中的相同字符,基本方法是逐一从文档中读入字符,判断该字符
是否在另外一个文档中,如果存在,则统计输出。参考代码及注释如下:
def getList(name):
f=open(name+’’一字符统计.txt’’,’’r’’,encoding=’’utf-8’’)
words=f.read().split(’,’)
for i in range(len(words)):
words
=words
.split(’:’)[0]
f.close()
return words
def main():
fo=open(’’相同字符.txt’’,’’w’’)
ls1=getList(’’命运’’)
ls2=getList(’’寻梦’’)
ls3=[]
for c in ls1: #获得一篇文章的字符
if c in ls2:#判断该字符是否在另外文章中
ls3.append(c) #如果存在,则放入公共字符列表
fo.write(’’,’’.join(ls3))
fo.close()
main()
转载请注明原文地址:https://kaotiyun.com/show/yP6p777K
本试题收录于:
二级Python题库NCRE全国计算机二级分类
0
二级Python
NCRE全国计算机二级
相关试题推荐
在VisualFoxPro中,下面关于索引的描述错误的是()。
在VisualFoxPro中,下列变量中需要事先定义是()。
数据库系统的核心是()。
假设temp.dbf数据表中有两个字段“歌手号”和“最后得分”,下面程序段的功能是:将temp.dbf中歌手的“最后得分”填入“歌手”表对应歌手的“最后得分”字段中(假设已增加了该字段),在下划线处应该填写的SQL语句是()。USE歌手
在菜单设计中,可以在定义菜单名称时,为菜单项指定一个访问键。例如,要为“文件”菜单项指定访问键为“F”的菜单名称定义是()。
建立“学生”数据库;把自由表student(学生)、course(课程)和score(选课成绩)添加到新建立的数据库;建立满足如下要求的表单formlist(控件名和文件名)①添加一个表格控件Gridl,并按学号升序显示学生选课及考试成绩信息(包括字段学
在考生文件夹下完成下列操作:(1)用命令新建一个名为“外汇”的数据库,并将该命令存储于one.txt中。(2)将自由表“外汇汇率”、“外汇账户”、“外汇代码”加入到新建的“外汇”数据库中。(3)用SQL语句在“外汇”数据库中新建一个数据库表rate,
在考生文件夹下,打开招生数据库sdb,完成如下操作:(1)在ksb表中增加一个名为“备注”的字段、字段数据类型为“字符”、宽度为30。(2)在考生成绩表ksc.jb中给成绩字段设置有效性规则和默认值,成绩>=0AND成绩
下面的SQL语句能实现的功能是()。SELECT*FROM学生WHERE班级号="0801";UNION;SELECT*FROM学生WHERE班级号="0802"
下列关于线性链表的叙述中,正确的是()。
随机试题
妨碍铁剂在肠道吸收的物质是
下列不属于房地产广告特点的是()。
水泥混凝土面层组成材料中,碎石最大公称粒径不应大于()mm。
国内企业甲与外国投资者乙拟共同投资设立中外合资经营企业,投资总额为1200万美元。根据中外合资经营企业法律制度的规定,该企业注册资本至少应为()万美元。
(1)表明身份(2)制作当场处罚决定书(3)听取陈述、申辩(4)说明处罚理由(5)制作笔录
一条街上,一个骑车人与一个步行人同向而行,骑车人的速度是步行人速度的3倍,每隔10分钟有一辆公共汽车超过行人,每隔20分钟有一辆公共汽车超过骑车人。如果公共汽车从始发站每次间隔同样的时间发一辆车,那么间隔()分发一辆公共汽车。
【祆教】
Fromthepassagewecansee,theauthorisquite______withtheprospectoftheAsiaPacificEconomicCooperationforum.
•Lookatthenotesbelow.•Youwillhearawomantelephoningaboutarecruitmentdrive.•star?neededduetogrowthin(9)...
•Readthefollowingletter.•Choosethebestwordtofilleachgap.•Foreachquestion(19-33),markoneletter(A,B,CorD)
最新回复
(
0
)