首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
考生文件夹下存在两个Python源文件PY30H.Py和PY301—2.Py,分别对应两个问题,请按照文件内说明修改代码,实现以下功能: 《傲慢与偏见》是史上最震撼人心的“世界文学十部最佳小说之一”。第一章的内容由考生文件夹下文件arrogant.
考生文件夹下存在两个Python源文件PY30H.Py和PY301—2.Py,分别对应两个问题,请按照文件内说明修改代码,实现以下功能: 《傲慢与偏见》是史上最震撼人心的“世界文学十部最佳小说之一”。第一章的内容由考生文件夹下文件arrogant.
admin
2020-04-10
43
问题
考生文件夹下存在两个Python源文件PY30H.Py和PY301—2.Py,分别对应两个问题,请按照文件内说明修改代码,实现以下功能:
《傲慢与偏见》是史上最震撼人心的“世界文学十部最佳小说之一”。第一章的内容由考生文件夹下文件arrogant.txt给出。
问题1:请编写程序,统计该篇文章的英文字符数(不统计换行符),字符与出现次数之间用英文冒号“:”分隔。结果保存在考生文件夹下,命名为“PY301—1.txt”。
试题程序:
#以下代码为提示框架
#请在程序的…处使用一行或多行代码替换
#请在程序的_______处使用一行代码替换
#注意:提示框架代码可以任意修改,以完成程序功能为准
…
d={}
…
ls=list(d.items())
…
fo.write(”{}:{}\n”.format(________,_______))
问题2:在问题1的前提下,将得到的字符次数进行排序,并将排名前10的常用字符保存在”afrogant—sort.txt”文件中。
试题程序:
#以下代码为提示框架
#请在程序的…处使用一行或多行代码替换
#请在程序的______处使用一行代码替换
#注意:提示框架代码可以任意修改,以完成程序功能为准
…
d={}
…
ls=list(d.items())
ls.sort(key=lambda x:x[1],reverse=True)
…
fo.write(“{}:{}\n”.format(_______,______))
…
选项
答案
(1)fi=open("arrogant.txt","r") fo=open("PY301-1,txt","w") txt = fi.read() d = {} for s in txt; d[s]=d.get(s,0)+1 del d[’\n’] ls=list(d.items()) for i in range (len(ls)); fo.write(”{}:{}\n”.format(ls[i][0],ls[i][1])) fi.close() fo.close() (2)fi=open("arrogant.txt","r") fo=open("arrogant-sort.txt","w") txt=fi.read() d= {} for s in txt; d[s]=d.get(s,0) + 1 del d[’\n’] ls=list(d.items()) ls.sort(key=lambda x:x[1],revere=True) for i in range(10); fo.write(”{}:}}\n”.formal(ls[i][0],ls[i][1])) fi.close() fo.close()
解析
(1)首先使用open()函数打开文件“arrogant.txt”,把文件的内容通过.read()方法保存到变量txt中;然后用for循环遍历txt中的每个英文字符,将该字符作为字典d中的一个键,该键所对应的值置为1,在后面循环中只要遍历的字符与该键相同,就将该键对应的值加1。这样,字典中的键值对对应着英文字符和出现的次数。由于题目要求不统计换行符,因此需要使用del删除换行符对应的键值对。
ls=list(d.items())表示将字典类型变成列表类型,字典中的每个键值对对应列表中的一个元组。每个元组中的第一个元素ls
[0]表示英文字符,第二个元素ls
[1])表示字符出现的次数。通过for循环遍历按照格式规则将两个对应的元素写入到文件“PY301一1.txt”中。
(2)问题2在问题1的基础上增加了排序,排序的规则是按照字符出现的次数降序排序,因此排序后列表中前10个元素(元组)就是排名前10的字符。通过for循环遍历按照格式规则将这10个元素写入到文件“arrogant—sort.tx”中。
转载请注明原文地址:https://kaotiyun.com/show/4u6p777K
本试题收录于:
二级Python题库NCRE全国计算机二级分类
0
二级Python
NCRE全国计算机二级
相关试题推荐
可以运行查询文件的命令是()。
在VisualFoxPro中,扩展名为mnx的文件是()。
下列函数返回类型为数值型的是()。
在连编应用程序中,下列描述错误的是()。
在考生文件夹下完成如下简单应用:(1)建立一个名为NEW_VIEW的视图,该视图含有选修了课程但没有参加考试(成绩字段值为NULL)的学生信息(包括“学号”、“姓名”和“系部”3个字段)。(2)建立表单MYFORM3,在表单上添加一个表格控件(名称为g
下列程序段执行后,内存变量s1的值是()。s1="network"s1=stuff(s1,4,4,"BIOS")?S1
假设表文件TEST.DBF已经在当前工作区打开,要修改其结构,可使用命令()。
假设之前没有定义变量x,那么下面程序代码的输出结果是()。privatex?x
SQL语言的插入命令的关键词是()。
Python文件的后缀名是
随机试题
教师的教育机智属于知识素养中的_______。
A.夜间咳甚B.咳声不扬C.咳声低微D.咳声重浊E.天亮咳甚
下列何种表述不属于法的规则?()
下列对直流系统接线的表述,哪一条是不正确的?
3D立体技术代表了当前电影技术的尖端水准,由于使电影实现了高度可信的空间感,它可能成为来来电影的主流。3D立体电影中的银屏角色虽然由计算机生成,但是那些包括动作和表情的电脑角色的“表演”,都以真实演员的“表演”为基础,就像数码时代的化妆技术一样。这也引起了
数字摄像机的主要优点有()
西方文化是人类文化发展史上一颗璀璨的明珠,以下作品的作者身为同一个国家的是()。①《神曲》②《最后的晚餐》③《飞鸟集》④《唐璜》⑤《十日谈》
如果我国人民币实现国际化,被其他国家作为储备货币,则我国就成为储备货币发行国。到那时,我国的国际储备就可以()。
教育的质的规定性就是教育的()
对无线局域网,可显著提高数据率的技术是1.______。对有2台计算机、1个AP、采用300Mbps的802.11n的WLAN,2台计算机数据传输的概率相同,则每台计算机实际传送用户数据的最大理论速度最接近2.______MB/s。2._____
最新回复
(
0
)