首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
考生文件夹下存在2个Python源文件和1个文本文件。其中,2个Python源文件对应2个问题,文本文件data.txt中包含一篇从互联网上下载的关于“德国工业4.0战略规划实施建议摘要”的文章。请分别补充2个Python源文件,完成以下功能。 提取主
考生文件夹下存在2个Python源文件和1个文本文件。其中,2个Python源文件对应2个问题,文本文件data.txt中包含一篇从互联网上下载的关于“德国工业4.0战略规划实施建议摘要”的文章。请分别补充2个Python源文件,完成以下功能。 提取主
admin
2022-09-10
73
问题
考生文件夹下存在2个Python源文件和1个文本文件。其中,2个Python源文件对应2个问题,文本文件data.txt中包含一篇从互联网上下载的关于“德国工业4.0战略规划实施建议摘要”的文章。请分别补充2个Python源文件,完成以下功能。
提取主题词并统计其频次。要求:在文件PY301-2.py中补充代码,提取clean.txt文件中长度不少于3个字符的词语并统计词频,将词频最高的10个词语作为主题词,并将主题词及其频次显示到屏幕上。输出示例如下。
4.0:10,制造业:9,…
注意:输出格式采用英文冒号和英文逗号,标点符号前后无空格,各词语中间用逗号分隔,最后一个词语后无逗号。
试题程序
#
#以下代码仅供参考
#
import jieba
d={}
lt=list(d.items())
lt.sort(key=lambda x:x[1],reverse=True)
选项
答案
import jieba f=open(’clean.txt’,’r’) data=f.read() l=jieba.lcut(data) d={} for i in l: if len(i)>=3: d[i]=d.get(i,0)+1 lt=list(d.items()) lt.sort(key=lambda x:x[1],reverse=True) for i in lt[:9]: print(i[0],’:’,end=’,’,sep=’’) print(lt[9][0],’:’,lt[9][1],sep=’’) f.close()
解析
(1)本题无须使用jieba库,直接读取文件。此处需要将读取文件的编码设置为utf-8,通过参数encoding设置即可。创建一个包含中文标点符号的字符串,并且该字符串需将空格和换行符考虑进去。考生可先浏览data.txt文件查看有关中文标点。接下来对读取的数据进行遍历,只要不在标点符号字符串内的数据都添加到新的变量中,然后直接写入文件clean.txt即可。
(2)本题要使用jieba库,则首先用import保留字导入jieba库。打开data.txt文件后,需要用read()方法读入整个文件内容并赋值给data;然后使用jieba库的lcut()函数对data进行精准分词,其分词结果存放在列表1中;最后定义一个字典d,用来存放选出的主题词(键)和该词出现的次数(值)。
用for循环遍历列表l中的每个元素(主题词),题目要求选出长度大于等于3个字符的主题词(len(i)>=3),当主题词符合要求时,就将该元素存入字典d中作为一个键(d
),该键所对应的值设置为1(d.get(i,0)+1),在后面循环中只要遍历的主题词和键相同,就将该键对应的值加1。
lt=list(d.items())表示将字典类型变成列表类型,字典中的每个键值对对应列表中的一个元组。随后,对列表lt中的元素进行排序,使用sort()方法。参数“key=lambda x:x[1]”中,lambda是一个隐函数,是固定写法,不能写成别的单词;x表示列表中的一个元素,在这里表示一个元组,x只是临时起的一个名字,也可以使用任意的名字;x[1]表示以元组中第2个元素排序。sort()方法的第2个参数表示排序方式,若该参数为“reverse=True”,则表示按降序排序;若该参数未填写或为“reverse=False”,则表示按升序排序,即按照列表lt中每个元组中的第2个元素(次数)降序排序。
排序后,通过一个for循环,遍历列表lt中的前9个元组,每个元组的第1个元素(主题词)和第2个元素(次数)通过“:”连接输出,并添加逗号作为输出结束符,空格作为字符分隔符。最后输出第10个元组即可。
转载请注明原文地址:https://kaotiyun.com/show/hznp777K
本试题收录于:
二级Python题库NCRE全国计算机二级分类
0
二级Python
NCRE全国计算机二级
相关试题推荐
假设表s中有10条记录,其中字段b小于20的记录有3条,大于等于20、并且小于等于30的记录有3条,大于30的记录有4条。执行下面的程序后,屏幕显示的结果是SETDELETEONDELETEFROMsWHEREbBETWE
下列命令中,不会创建文件的是
在VisualFoxPro中,下列程序段执行后,内存变量s1的值是s1=’’奥运会体操比赛’’s1=stuff(s1,7,4,’’篮球’’)?s1
假定一个表单里有一个文本框Textl和一个命令按钮组CommandGroup1。命令按钮组是一个容器对象,其中包含Command1和Command2两个命令按钮。如果要在Command1命,令按钮的某个方法中访问文本框的Value属性值,正确的表达式是
表格控件的数据源可以是
对长度为10的线性表进行冒泡排序,最坏情况下需要比较的次数为
下列函数返回类型为字符型的是()。
(1)在数据库“住宿浏览”中使用一对多表单向导生成一个名为zsform的表单。要求从父表“宿舍”中选择所有字段,从子表“学生”表中选择所有字段,使用“宿舍号”字段建立两个表之间的关系,样式为“边框式”;按钮类型为“图片按钮”;排序字段为“宿舍号”(升序);
在VisualFoxPro中,通常以窗口形式出现,用以创建和修改表、表单、数据库等应用程序组件的可视化工具称为()。
______方法是不能被当前类的子类重新定义的方法。
随机试题
设为总体X~N(3,4)中抽取的样本(X1,X2,X3,X4)的均值,则P(-1<<5)=________.
A.限制胆固醇摄入,中重度胆固醇小于200mg/dB.限制总能量、限制盐、补充维生素和矿物质C.限制总能量摄入、限制不饱和脂肪酸、增加蛋白质D.低盐、低脂肪、低胆固醇、少食多餐E.高能量、高蛋白质高血压的饮食治疗是
肝细胞合成的胆汁首先进入
()工作就是通过实际情况与施工成本计划相比较,找出二者之间的差别,分析偏差产生的原因,从而采取措施加以改进。
下列不属于国产非标准设备原价构成的是()。
对长期待摊费用等其他资产的评估通常发生在()。
当持续期缺口为负值时,银行净值随市场利率上升而上升,随利率的下降而下降。()
“以事实为根据,以法律为准绳”是人民法院审理案件的()。
Itseemsthatbeautyandwomenaretwins.Youarejoking?No,Iamnot.Observeforyourself.AdsonfashionfloodTVscreens,r
Electricityhadbecomethemostimportantthinginthecountry.
最新回复
(
0
)