首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
《三国演义》是中国古典四大名著之一,曹操是其中主要人物,考生文件夹下文件data.txt给出《三国演义》简介。 问题1:请编写程序,用Python语言中文分词第三方库jieba对文件data.txt进行分词,并将结果写入文件out.txt,每行一个
《三国演义》是中国古典四大名著之一,曹操是其中主要人物,考生文件夹下文件data.txt给出《三国演义》简介。 问题1:请编写程序,用Python语言中文分词第三方库jieba对文件data.txt进行分词,并将结果写入文件out.txt,每行一个
admin
2020-04-10
57
问题
《三国演义》是中国古典四大名著之一,曹操是其中主要人物,考生文件夹下文件data.txt给出《三国演义》简介。
问题1:请编写程序,用Python语言中文分词第三方库jieba对文件data.txt进行分词,并将结果写入文件out.txt,每行一个词,例如:
内容简介
编辑
整个
故事
在
东汉
…
在考生文件夹下给出了程序框架文件PY301—1.py,补充代码完成程序
试题程序:
#请在_____处使用一行代码或表达式替换
#
#注意:请不要修改其他已给出代码
import jieba
f=open(’data.txt’,’r’)
lines =f.readlines()
f.close()
f=open(’out.txt’,’w’)
for line in lines:
line=_____(1)_____ #删除每行首尾可能出现的空格
wordList=_____(2)_____ #用结巴分词,对每行内容进行分词
f.writelines(’\n’_____(3)____)#将分词结果存到文件out.txt中
f.close()
问题2:对文件out.txt进行分析,打印输出曹操出现次数。
在考生文件夹下给出了程序框架文件PY301—2.py,补充代码完成程序
试题程序:
#请在______处使用一行代码或表达式替换
#
#注意:请不要修改其他已给出代码
import jieba
f=open(’out.txt’,’r’) #以读的方式打开文件
words =f.readlines()
f.close()
D={}
for w in_____(1)_____: #词频统计
D[w[:一1]]=_______(2)_______+1
print(”曹操出现次数为:{}”.format(______(3)________))
选项
答案
(1)import jieba f=open(’data.txt’,’r’) lines=f.readlines() f.close() f=open(’out.txt’,’w’) for line in lines: line=line.strip() wordList=jieba.lcut(line) f.writelines(’\n’.join(wordList)) f.close() (2)import jieba f=open(’out.txt’,’r’) words=f.readlines() f.close() D={} for w in words: D[w[:一1]]=D.get(w[:-1],0)+1 print(”曹操出现次数为:{}”.format(D[’曹操’]))
解析
(1)本题要使用jieba库,则首先用import保留字引用jieba库。打开”data.txt”文件后,需要用readlines()函数读人所有行,以每行为元素形成列表lines,然后用for循环遍历该列表中的每个元素并进行分词。在遍历每个元素时,首先用strip()方法删除元素首尾出现的空格,因此第一空填入:line.strip();然后使用jieba库的lcut()函数对元素进行精准分词,因此第二空填入:jieba.lcut(line);最后将换行符’\n’插入到每个词组之间,并写入到文件”out.txt”中,因此第三空填入:join(wordList)。
(2)首先用import保留字引用jieba库。打开”out.txt”文件后,需要用readlines()函数读入所有行,以每行为元素形成列表words,然后用for循环遍历该列表中每个元素出现的次数。因此,第一空填入:words。
在遍历每个元素时,若字典D中不存键与该元素相同,就将该元素作为字典D的一个键,该键所对应的值置为1;若字典D中存在键与该元素相同,就将该键对应的值加1。因此,第二空填入:D.get(w[:一1],0)。
题目要求的是打印输出曹操出现次数,字典D中键”曹操”对应的值即为该词出现的次数。因此,第三空填入:D[’曹操’]。
转载请注明原文地址:https://kaotiyun.com/show/OA6p777K
本试题收录于:
二级Python题库NCRE全国计算机二级分类
0
二级Python
NCRE全国计算机二级
相关试题推荐
有三个关系R、S和T如下:由关系R和S通过运算得到关系T,则所使用的运算为()。
(1)在考生文件夹下根据SCORE_MANAGER数据库,使用查询向导建立一个含有“姓名”和“出生日期”的标准查询QUERY3_1.QPR。(2)从SCORE_MANAGER隅数据库中删除名为NEW_VIEW3的视图。(3)用SQL命令
在使用查询设计器创建查询时,为了指定在查询结果中是否包含重复记录(对应于DISTINCT),应该使用的选项卡是()。
查询学生表的全部记录并存储于临时表文件one中的SQL命令是()。
命令?VARTYPE(TIME())的结果是()。
在VisualFoxPro中调用表单文件mf1的正确命令是()。
下列程序段的执行结果是()。DIMEa(8)a(1)=1a(2)=1fori=3to8a(i)=a(i一1)+a(i一2)next?a(7)
随机试题
如果当前资本市场弱式有效,下列说法正确的是()。
Scientistshavebeenstrugglingtofindoutthereasonbehindblushing(脸红).Whywouldhumansevolve(进化)a【41】thatputsusat
Beck三联征的内容为以下哪些
本票在发票时有三个当事人,即出票人、付款人和收款人。()
经济单位或个人自己承担全部风险成本的一种风险管理方法是()。
旅行社可依法将旅游业务委托给其他旅行社,接受委托的旅行社由于重大过失造成旅游者合法权益损害的,应当承担连带责任。()
下列权利中,只能由自然人享有的是()。
下列选项中,公民和法人都可以享有的民事权利有()。
函数项级数的收敛域为()
ForthepeoplewhohavenevertraveledacrosstheAtlanticthevoyageisafantasy.Butforthepeoplewhocrossitfrequentlyo
最新回复
(
0
)