首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
考生文件夹下存在2个Python源文件和3个文本文件,分别对应两个问题,请按照文件内说明修改代码,实现以下功能。 《论语》是儒家学派的经典著作之一,主要记录了孔子及其弟子言行。这里给出了一个网络版本的《论语》,文件名称为“论语.txt”,其内容采用
考生文件夹下存在2个Python源文件和3个文本文件,分别对应两个问题,请按照文件内说明修改代码,实现以下功能。 《论语》是儒家学派的经典著作之一,主要记录了孔子及其弟子言行。这里给出了一个网络版本的《论语》,文件名称为“论语.txt”,其内容采用
admin
2021-03-16
35
问题
考生文件夹下存在2个Python源文件和3个文本文件,分别对应两个问题,请按照文件内说明修改代码,实现以下功能。
《论语》是儒家学派的经典著作之一,主要记录了孔子及其弟子言行。这里给出了一个网络版本的《论语》,文件名称为“论语.txt”,其内容采用逐句“原文”与逐句“注释”相结合的形式组织,通过【原文】标记《论语》原文内容,通过【注释】标记《论语》注释内容,具体格式请参考“论语.瞰”文件。
问题1:在“PY301-1.py”文件中修改代码,提取“论语.txt”文件中的原文内容,输出保存到考生文件夹下,文件名为“论语-原文.txt”。具体要求:仅保留“论语.txt”文件中所有【原文】标签下面的内容,不保留标
签,并去掉每行行首空格及行尾空格,无空行。原文圆括号及内部数字是源文件中注释内容的标记,请保留。文件输出格式请参考“论语-原文-输出示例.txt”文件。注意:输出示例仅帮助考生了解输出格式,不作它用。
试题程序:
#以下代码为提示框架
#请在程序的…处使用一行或多行代码替换
#请在程序的________处使用一行代码替换
#注意:提示框架的代码可以任意修改,以完成程序功能为准
fi=open("论语.txt",________)
fo=open("论语-原文.Txt,________)
…
for line in fi:
…
fo.write(1ine.lstrip())
…
问题2:在“PY301-2.py”文件中修改代码,对“论语-原文.txt”或“论语.txt”文件进一步提纯,去掉每行文字中所有圆括号及内部数字,保存为“论语-提纯原文.txt”文件。文件输出格式请参考“论语-提纯原文-输出示例.txt”文件。注意:示例输出文件仅帮助考生了解输出格式,不做它用。
试题程序:
#以下代码为提示框架
#请在程序的…处使用一行或多行代码替换
#请在程序的________处使用一行代码替换
#注意:提示框架的代码可以任意修改,以完成程序功能为准
fi=open("论语-原文.txt",________)
fo=open("论语-提纯原文.txt",________)
for line in fi:
…
line=line.replace(________)
…
选项
答案
(1)fi=open("论语.txt","r") fo=open("论语-原文.txt","w") flag=False for line in fi: if"【"in line: flag=False if"【原文】"in line: flag=False continue if flag==False fo.write(line.lstrip()) fi.close() fo.close() (2) fi=open("论语-原文.txt","r") fo=open("论语-提纯原文.txt","w") for line in fi: for i in range(1,23) line=line.replace("({})").format(i),"") fo.write(line) fi.close() fo.close()
解析
(1)题目要求从“论语.txt”文件中提取内容,输出保存到文件“论语-原文.txt”中,因此需要用"r"模式打开“论语.txt”,用"w"模式创建文件“论语-原文.txt”。
本题要求区域性提取,与单行提取不同,因此,可以借助写标记flag来标记操作的是哪里的文本。使用for循环遍历“论语.txt”中的每一行,当该行存在时,说明已经到了新的区域,写标记设置为否,即flag=False;当该行存在【原文】时,写标记设置为True;当写标记为True时,就将当前行内容写入新的文件"论语-原文.txt"中。对文件操作完成后,使用close()方法关闭文件。
(2)题目要求对“论语-原文.txt”进一步提纯,保存为“论语-提纯原文.txt”文件,因此需要用"r"模式打开“论语-原文.txt”,用"w"模式创建文件“论语-提纯原文.txt”。
题目要求去掉每行文字中所有圆括号及内部数字,可在for循环遍历“论语-原文.txt”文件中的每一行时,用空格来代替出现的“(数字)”形式。分析“论语-原文.txt”文件可知,其中出现(1)~(22)共22种可能,因此内部嵌套for循环需要从l遍历到22,构造(i)并替换。替换后将该行内容写入文件“论语-提纯原文.txt”中。对文件操作完成后,使用close()方法关闭文件。
转载请注明原文地址:https://kaotiyun.com/show/Xc6p777K
本试题收录于:
二级Python题库NCRE全国计算机二级分类
0
二级Python
NCRE全国计算机二级
相关试题推荐
在VisualFoxPro中,扩展名为mnx的文件是()。
软件按功能可以分为:应用软件、系统软件和支撑软件(或工具软件)。下面属于应用软件的是()。
假设temp.dbf数据表中有两个字段“歌手号”和“最后得分”。下面程序段的功能是:将temp.dbf中歌手的“最后得分”填入“歌手”表对应歌手的“最后得分”字段中。在下划线处应该填写的SQL语句是()。USE歌手DOWHILE.NO
设有关系评分(歌手号,分数,评委号),插入一条记录到“评分”关系,歌手号、分数和评委号的值分别是“1001”、9.9和“105”,正确的SQL语句是()。
在VisualFoxPro中,有如下内存变量赋值语句:X={^2001-07-2810:15:20PM}Y=.F.M=$123.45N=123.45Z="123.24"执行上述赋值语句之后,内存变量X、Y、M、N和Z的数据类型分
命令SELECT0的功能是()。
设一棵完全二叉树共有700个结点,则此二叉树中的叶子结点数为
设有关键码序列(Q,G,M,Z,A,N,B,P,X,H,Y,S,T,L,K,E),采用堆排序法进行排序,经过初始建堆后关键码值B在序列中的序号是()。
查询客户名称中有“网络”二字的客户信息的正确命令是
查询客户名称中有“网络”二字的客户信息的正确SQL命令是()。
随机试题
A.不换金正气散B.桃花汤C.驻车丸D.芍药汤E.六君子汤加味治疗寒湿痢,应首选的方剂是
连接左、右大脑半球的是
胎生网尾线虫寄生于
重型腹泻患儿呕吐频繁时,禁食的时间一般为
下列关于必须重新进行焊接工艺评定的说法中,错误的是()。
将一盏电灯放在桌子中央代表太阳,在离电灯大约1米远的桌边放一个地球仪代表地球,拨动地球仪模拟地球自转运动,如下图所示,读图完成下列小题。图中所示P点地理现象的叙述,正确的是()。
2004年2月4日,国际足联确认了()是足球发源地。
太阳系以外的行星距离我们50-1000光年,相对于所环绕的发光天体的光辉,它们显得黯淡无光,人们又无法到达那里,于是只能通过间接途径对其进行研究。1981年,科学家们观测以前很少光顾的绘架星座。距地球52光年的这个星座突然发生了不同寻常的情况:一颗形成时间
小王到某单位办事,只有一个窗口在办理业务,小王排在第6位,第一位客户开始办理业务的时间为9:02。假如每单业务的办理时间为6分钟,而且在小王前面的人不会提前离开。那么小王在什么时候可以开始办理业务?()
Readthearticlebelowaboutinventory.Forquestions13-18,markoneletter(A,B,CorD)onyourAnswerSheetfortheanswer
最新回复
(
0
)