logo
  • write-homewrite-home-active首页
  • icon-chaticon-chat-activeAI 智能助手
  • icon-pluginicon-plugin-active浏览器插件
  • icon-subjecticon-subject-active学科题目
  • icon-uploadicon-upload-active上传题库
  • icon-appicon-app-active手机APP
首页
/
计算机
题目

当代码成功执行时,程序将输出文本中出现频率最高的前10个人物名称及他们的出现次数,展示了对中文文本中特定人物的词频统计结果。import jieba #导入中文分词的库jieba#这些都不是人物的称号,但都是出现次数比较多的,需先列出来excludes = ("将军","却说","荆州","二人","不可","不能","如此","如何","左右","商议","主公","军士","军马","引兵","次日","大喜","天下","东吴","于是","今日","不敢","魏兵","陛下","一人","都督","人马","不知")txt = open("./三国演义.txt","r",encoding='utf-8').read() #读取文件words = ______ (txt) #用jieba库来中文分词#用字典来存储,各个人物的出场次数counts = (}for word in ______ : if len(word) == 1: continue #诸葛亮和孔明是同一个人 elif word == "诸葛亮" or word == "孔明曰": rword = "孔明" elif word == "关公" or word == "云长": rword = "关羽" elif word == "玄德" or word == "玄德曰": rword = "刘备" elif word == "孟德" or word == "丞相": rword = "曹操" else: rword = word counts[rword] = counts.get(rword,0) + 1#不是人物就从字典里删除for word in excludes: ______ counts[word]#将字典类型的数据转化为list类型items = list(counts.items())#排序,按出现的次数从大到小排好序items. ______ (key=lambda x:x[1],reverse=True)#打印出现次数前10的人物名字for i in ______ : word, count = items[i] t = "{0:{2)<10}(1:>5)" #chr(12288)是中文字的空格 print(t.format(word,count,chr(12288)))

当代码成功执行时,程序将输出文本中出现频率最高的前10个人物名称及他们的出现次数,展示了对中文文本中特定人物的词频统计结果。

import jieba #导入中文分词的库jieba
#这些都不是人物的称号,但都是出现次数比较多的,需先列出来
excludes = {"将军","却说","荆州","二人","不可","不能","如此","如何","左右","商议","主公",
"军士","军马","引兵","次日","大喜","天下","东吴","于是","今日","不敢","魏兵",
"陛下","一人","都督","人马","不知"}
txt = open("./三国演义.txt","r",encoding='utf-8').read() #读取文件
words = ______ (txt) #用jieba库来中文分词
#用字典来存储,各个人物的出场次数
counts = {}
for word in ______ :
if len(word) == 1:
continue
#诸葛亮和孔明是同一个人
elif word == "诸葛亮" or word == "孔明曰":
rword = "孔明"
elif word == "关公" or word == "云长":
rword = "关羽"
elif word == "玄德" or word == "玄德曰":
rword = "刘备"
elif word == "孟德" or word == "丞相":
rword = "曹操"
else:
rword = word
counts[rword] = counts.get(rword,0) + 1
#不是人物就从字典里删除
for word in excludes:
______ counts[word]
#将字典类型的数据转化为list类型
items = list(counts.items())
#排序,按出现的次数从大到小排好序
items. ______ (key=lambda x:x[1],reverse=True)
#打印出现次数前10的人物名字
for i in ______ :
word, count = items[i]
t = "{0:{2}<10}{1:>5}"
#chr(12288)是中文字的空格
print(t.format(word,count,chr(12288)))

题目解答

答案

本题考察中文分词与词频统计。首先,使用`jieba.lcut`将文本分词,排除单字词及非人物词(如“将军”、“却说”等)。其次,将“诸葛亮”与“孔明”、“关公”与“关羽”等归并为同一人物。最后,统计各人物出现次数,按降序排序并输出前10个结果。 完整代码如下: ```python import jieba excludes = {"将军", "却说", "荆州", "二人", "不可", "不能", "如此", "如何", "左右", "商议", "主公", "军士", "军马", "引兵", "次日", "大喜", "天下", "东吴", "于是", "今日", "不敢", "魏兵", "陛下", "一人", "都督", "人马", "不知"} txt = open("./三国演义.txt", "r", encoding='utf-8').read() words = jieba.lcut(txt) counts = {} for word in words: if len(word) == 1: continue elif word in ["诸葛亮", "孔明曰"]: rword = "孔明" elif word in ["关公", "云长"]: rword = "关羽" elif word in ["玄德", "玄德曰"]: rword = "刘备" elif word in ["孟德", "丞相"]: rword = "曹操" else: rword = word counts[rword] = counts.get(rword, 0) + 1 for word in excludes: if word in counts: del counts[word] items = list(counts.items()) items.sort(key=lambda x: x[1], reverse=True) for i in range(10): word, count = items[i] t = "{0:{2}<10}{1:>5}".format(word, count, chr(12288)) print(t) ```

相关问题

  • 程序=算法+()A. 数据结构B. 程序结构C. 控制结构[1]D. 体系结构

  • 以下哪种方法属于卷积神经网络的基本组件()。A. 卷积层B. 池化层C. 激活函数D. 复制层

  • 下列不属于量子机器学习算法的是()A. 量子支持向量机B. 量子主成分分析C. 薛定谔方程求解D. 深度量子学习

  • 下列哪项关于监督学习算法的描述正确()A. 强化学习的训练效果一定优于监督学习B. 主要的监督学习方法包括生成方法和判别方法C. 广度优先搜索算法是一种监督学习算法

  • 3.判断题K-means聚类算法对数据的尺寸敏感。()A. 对B. 错

  • 下列哪项贪婪最佳优先搜索算法的描述正确()A. 贪婪最佳优先搜索不属于启发式搜索算法B. 贪婪最佳优先搜索是一种A*搜索算法C. 贪婪最佳优先搜索是一种广度优先搜索算法D. 贪婪最佳优先搜索属于有信息搜索算法

  • 网络诈骗中常见的“钓鱼网站”目的是()?A. 传播病毒B. 窃取个人信息C. 提供免费电影

  • 网络安全包括物理安全[1]、逻辑安全、操作系统安全及联网安全,其中逻辑安全包括访问控制[2]、加密、安全管理及用户身份认证。A. 正确B. 错误

  • 7、 加强电脑安全防护,及时升级病 毒库,安装防火墙,及时查杀病毒和木马,是防范 电信网络诈骗的有效做法。A. 正确B. 错误

  • 网络安全包括物理安全[1]、逻辑安全、操作系统安全及联网安全,其中逻辑安全包括访问控制[2]、加密、安全管理及用户身份认证。A. 正确B. 错误

  • 下列哪项属于因果推理模型()A. 因果图B. 神经符号推理C. 符号推理模型D. 结构因果模型

  • 下列哪项不是求解对抗搜索问题的基本算法( ) A.反向传播算法 B.广度优先排序算法 C.Alpha-Beta剪枝算法D.最小最大搜索算法

  • Windows中“复制”操作的快捷键是Ctrl+V。

  • 由脸书(Facebook)公司开发的深度学习编程框架是()A. TensorFlowB. PaddlePaddleC. PyTorchD. Mindspore

  • 2.单选题 讯飞星火可以实现多种文案类型和语言风格的文本写作。讯飞星火(网页版)“内容写作”功能可选的“语言风格”不包括( )。A. 口语化B. 高情商C. 专业D. 热情

  • 下列哪个方法属于知识图谱推理方法()A. 广度优先搜索B. 深度学习推断C. 路径排序算法D. 归纳逻辑程序设计

  • 在决策树建立过程中,使用一个属性对某个结点对应的数集合进行划分后,结果具有高信息熵(highentropy),对结果的描述,最贴切的是()。A. 纯度高B. 纯度低C. 有用D. 无用E. 以上描述都不贴切

  • AdaBoosting采用多个单一分类器组成一个强分类器()A. 错误B. 正确

  • 路径排序算法的工作流程主要有三步()A. 特征计算B. 特征抽取C. 分类器训练D. 因果推断

  • 下列哪个方法属于知识图谱推理方法()A. 路径排序算法B. 深度学习推断C. 广度优先搜索D. 归纳逻辑程序设计

上一页下一页
logo
广州极目未来文化科技有限公司
注册地址:广州市黄埔区揽月路8号135、136、137、138房
关于
  • 隐私政策
  • 服务协议
  • 权限详情
学科
  • 医学
  • 政治学
  • 管理
  • 计算机
  • 教育
  • 数学
联系我们
  • 客服电话: 010-82893100
  • 公司邮箱: daxuesoutijiang@163.com
  • qt

©2023 广州极目未来文化科技有限公司 粤ICP备2023029972号    粤公网安备44011202002296号