浙大PTA 第7章-1 词频统计 (30 分)

[蓝桥杯题解] 7-14 词频统计 (30 分) 请编写程序,对一段英文文本,统计其中所有不同单词的个数,以及词频最大的前10%的单词。 所谓“单词”,是指由不超过80个单词字符组成的连续字符串,但长度超过15的单词将只截取保留前15个单词字符。而合法的“单词字符”为大小写字母、数字和下划线,其它字符均认为是单词分隔符。 输入格式: 输入给出一段非空文本,最后以符号#结尾。输入保证存在至少10个不同的单词。 输出格式: 在第一... 阅读详情

请编写程序,对一段英文文本,统计其中所有不同单词的个数,以及词频最大的前10%的单词。

所谓“单词”,是指由不超过80个单词字符组成的连续字符串,但长度超过15的单词将只截取保留前15个单词字符。而合法的“单词字符”为大小写字母、数字和下划线,其它字符均认为是单词分隔符。

输入格式:

输入给出一段非空文本,最后以符号#结尾。输入保证存在至少10个不同的单词。

输出格式:

在第一行中输出文本中所有不同单词的个数。注意“单词”不区分英文大小写,例如“PAT”和“pat”被认为是同一个单词。

随后按照词频递减的顺序,按照词频:单词的格式输出词频最大的前10%的单词。若有并列,则按递增字典序输出。

输入样例:

This is a test.

The word "this" is the word with the highest frequency.

Longlonglonglongword should be cut off, so is considered as the same as longlonglonglonee.  But this_8 is different than this, and this, and this...#
this line should be ignored.

输出样例:(注意:虽然单词the也出现了4次,但因为我们只要输出前10%(即23个单词中的前2个)单词,而按照字母序,the排第3位,所以不输出。)

23
5:this
4:is

题解:

s=''
while True:
    a=input()
    if s and s[-1]=='#':
        break
    else:
        s+=a
s=s[:s.find('#')]
# print(s)
li = list(s)
for i in range(len(li)):
    if not li[i].isalnum() and li[i]!='_':
        li[i]=' '
li1=''.join(li).split()
dic={}
for i in li1:
    if len(i)>15:
        i=i[:15]
    if i.lower() not in dic:
        dic[i.lower()]=1
    else:
        dic[i.lower()]+=1
print(len(dic))
dic={'this': 5, 'is': 4, 'a': 1, 'test': 1, 'the': 4, 'word': 2, 'with': 1, 'highest': 1, 'frequency': 1, 'longlonglonglon': 2, 'should': 1, 'be': 1, 'cut': 1, 'off': 1, 'so': 1, 'considered': 1, 'as': 2, 'same': 1, 'but': 1, 'this_8': 1, 'different': 1, 'than': 1, 'and': 2} 
li2=sorted(dic.items(),key=lambda x:-x[1])
# print(li2,len(dic)//10)
for i in range(len(dic)//10):
    print(f'{li2[i][1]}:{li2[i][0]}')

第7章-1 词频统计 (30分) 这题我实在不知道错在哪,验证答案时四个有两处时错的,所以记录一下,看看有没有大佬指点。 s = '' while '#' not in s: s += input() s = s[:s.index('#')] for k in set([i for i in s if (not i.isalnum()) and (i != '_')]): s = s.replace(k,' ') l = s.lower().split() d = {} for i in l: if len. 阅读详情

相关推荐

C语言入门到精通:从翁恺课程到项目实战的完整学习路径

C语言作为计算机编程的基石,其核心在于理解内存管理、指针操作和底层系统交互。通过掌握变量、数据类型、函数和流程控制等基础语法,学习者能够构建稳固的编程心智模型。指针作为C语言的灵魂,是实现高效内存操作和数据结构的關鍵,理解指针与数组、函数参数传递及动态内存分配的原理,是进阶系统编程和嵌入式开发的必备技能。在工程实践中,通过开发通讯录管理、文本词频统计等项目,能深化对文件操作、结构体应用的理解。结合翁恺老师的经典课程,从内存视角剖析语法本质,配合GCC编译器、GDB调试器等工具链的使用,可系统性地跨越从语法学

weixin_34372728的博客 372

7-1 词频统计 - 实验11 字典操作及应用 - 《Python编程实验》 (10 分)

从键盘读入由仅由英文构成的多行文本,借助于字典统计其中每个单词出现的次数。然后按字典递增序按格式输出每个单次出现的次数。 要求: 1. 所有单词不区分大小写,输出时按小写格式输出; 2. 需要排除! , : ?等英文符号,即这些符号不应作为单词的构成部分; 3. 需要排除0,1,2,... 9等数字,即这些数字不应作为单词的构成部分。 输入格式: 行数n 第1行内容 第2行内容 .... 第n行内容 输出格式: 单词1 单词1出现次数 单词2 单词2出现次数 ... 单词k 单词k出现次数 注

Neptune_qiao的博客 6251

python浙大版pta第七章

第7章-1 词频统计 (30分) 请编写程序,对一段英文文本,统计其中所有不同单词的个数,以及词频最大的前10%的单词。 所谓“单词”,是指由不超过80个单词字符组成的连续字符串,但长度超过15的单词将只截取保留前15个单词字符。而合法的“单词字符”为大小写字母、数字和下划线,其它字符均认为是单词分隔符。 输入格式: 输入给出一段非空文本,最后以符号#结尾。输入保证存在至少10个不同的单词。 输出格式: 在第一行中输出文本中所有不同单词的个数。注意“单词”不区分英文大小写,例如“PAT”和“pat”被

混元形意掌门 4338

7-1 词频统计 (30 分)

7-1 词频统计 (30 分) 词频统计 参考: 对参考的代码进行了一些补充和修改,大体思路没变 并不是想说这题多难,只是在这题可以用STL的很多结构帮助解题,所以能让代码变得很简单 题目 7-1 词频统计 (30 分) 请编写程序,对一段英文文本,统计其中所有不同单词的个数,以及词频最大的前10%的单词。 所谓“单词”,是指由不超过80个单词...

weixin_34354945的博客 2502

30习题5.13 词频统计(编程题)【PTA浙大版《数据结构(第2版)》题目集】

词频统计 哈希表

少侠PSY的博客 828

95第7章-1 词频统计【浙大版《Python 程序设计》题目集】

95第7章-1 词频统计【浙大版《Python 程序设计》题目集】

少侠PSY的博客 539

浙大版PTA《Python 程序设计》题目集 参考答案

本答案配套详解教程专栏,欢迎订阅。

少侠PSY的博客 5万+

八戒留档之宝塔部署edusoho

1.安装好基础的服务 2.上传你下载的代码到www/wwwroot文件3、配置网站 4.编辑创建的网站修改nginx文件 NGINX配置如下 server { listen 80; server_name 你的域名; root /www/wwwroot/项目文件名称/web/; location / { try_files $uri /app_dev.php$is_args$args; } ...

wolf23151269的博客 2540

PTA_浙大版《Python 程序设计》题目集第7章-1 词频统计分数 30

第7章-1 词频统计 分数30 全屏浏览题目 切换布局 作者DS课程组 单位浙江大学 请编写程序,对一段英文文本,统计其中所有不同单词的个数,以及词频最大的前10%的单词。 所谓“单词”,是指由不超过80个单词字符组成的连续字符串,但长度超过15的单词将只截取保留前15个单词字符。而合法的“单词字符”为大小写字母、数字和下划线,其它字符均认为是单词分隔符。 输入格式: 输入给出一段非空文本,最后以符号#结尾。输入保证存在至少10个不同的单词。 输出格式: 在第一行中输出文...

Sgappti的博客 4059

Nginx源码安装和基础配置

Nginx简介 nginx: 世界第二大web服务器软件,以高并发、低消耗著称,源自于俄罗斯,创建者 Igor(伊戈尔),2004年开源,最早以代理服务器的身份出现,2015成立nginx公司,2019年以6.7亿被F5 Networks公司收购。 代理服务器: 正向:squid 反向: squid:最古老的代理服务器 LVS: 优点: 1.抗负载能力强、是工作在网络4层之上仅作分发之用 2.配置性比较低,这是一个缺点也是一个优点,简单不易出错 3.工作稳定,抗负载能力很强,有完整的双机热备方案

hjyhjy0的博客 500

Qt6.8.0(win64)安装教程

启动 Visual Studio 2022 Community,选择 “继续但无需代码” 运行,然后打开Option设置,Add一条版本配置,Location 选择 D:\Qt\6.8.0\msvc2022_64\bin\qmake,点击确定。我是win11系统,所以选择windows版,下载路径二选一即可。方案1:默认情况下,额外勾选图中两个组件(总共40多G)方案2:按图中自定义勾选组件(总共5.8G)选择Custom Installation。我选的方案2,总共5.81G。

D4G1TIAO的博客 9067

浙大Python 第7章-1 词频统计 (30 分)(含题解)

原题题目 代码实现 import sys s = sys.stdin.read() #没办法 这道题就让你用sys.stdin.read读入 你能怎么办 s = s[:s.find('#')] #将最后的#号去掉 for i in set([j for j in s if j.isalnum() == False and j!='_']): s = s.replace(i,' ') #这里是对除字母alpha 数字number以外的全部字符当作空格处理 并在后面将空格全部隔开清楚 ret =

Love 6's Private Blog 2499

CentOS 7下Synopsys DC综合工具安装与配置全攻略(附常见报错解决方案)

本文详细介绍了在CentOS 7操作系统上安装与配置Synopsys Design Compiler(DC)综合工具的完整流程。内容涵盖从系统环境准备、软件安装、许可证配置到实战综合的全过程,并针对DC综合工具在安装和运行中常见的报错问题提供了具体的解决方案,帮助数字IC设计初学者快速搭建稳定的EDA学习环境。

weixin_29159441的博客 257

【浙大版《Python 程序设计》题目集(解)】第7章-1 词频统计(30分)

请编写程序,对一段英文文本,统计其中所有不同单词的个数,以及词频最大的前10%的单词。所谓“单词”,是指由不超过80个单词字符组成的连续字符串,但长度超过15的单词将只截取保留前15个单词字符。而合法的“单词字符”为大小写字母、数字和下划线,其它字符均认为是单词分隔符。

qq_62845367的博客 1055

Codex 团队如何用自己的产品构建产品——整个 Spec 只有 10 个要点

OpenAI Codex团队采用极简产品开发模式,整个产品规格仅10个要点。团队50-100人长期仅1名PM,设计师代码量已超过工程师。产品负责人Alexander Embiricos透露,团队几乎不写详细文档,仅在需要协调时写简短要点。OpenAI采用独特规划哲学:只做8周内短期或长期方向性规划,拒绝中期路线图。2025年GPT-5.2 Codex发布后,模型能力突破催生了桌面应用开发。团队强调"让离代码最近的人做决策",PM角色转变为"填空者",设计师与工程师界限

347

抓包网络调试工具 reqable抓包教程

如果CA根证书未安装成功,网络图标是黄色,点击盾牌图标可以进入CA根证书安装界面,详细步骤请阅读。在API调试中,获取流量是第一步也是最基本的操作,这里讲解下如何使用Reqable获取流量,通俗地讲就是抓包。我们可以选择一个图片请求,双击打开详情面板,能够看到该请求的详细信息。如果系统代理未设置,网络图标是黄色,点击网络图标可以自动设置系统代理。此域名的结构树,可以查看该域名下所有请求的目录结构,点击选择可以查看该请求的详情。首先,需要启用Reqable的调试功能,点击最右上角的。打开浏览器,输入地址。

代码简单说 Vue、JAVA、PHP、Node.js 熟练运用,接口、架构、性能全搞定。 2556

【PTA|Python】浙大版《Python 程序设计》题目集:第七章

前言 Hello!小伙伴! 非常感谢您阅读海轰的文章,倘若文中有错误的地方,欢迎您指出~   自我介绍 ଘ(੭ˊᵕˋ)੭ 昵称:海轰 标签:程序猿|C++选手|学生 简介:因C语言结识编程,随后转入计算机专业,有幸拿过国奖、省奖等,已保研。目前正在学习C++/Linux(真的真的太难了~) 学习经验:扎实基础 + 多做笔记 + 多敲代码 + 多思考 + 学好英语! 往期题目集 【PTA|Python】浙大版《Python 程序设计》题目集:第一章 【PTA|Python】浙大版《Python

海到无边天作岸 山登绝顶我为峰 5990

【FPGA教程案例96】控制案例1——基于FPGA的自适应PID控制器verilog实现

首先,我们复习下课程传统的PID控制器,往往存在调整速度较慢,超调过大等缺点。为了解决这个问题,在实际的PID应用中,需要实时的调整PID的控制参数,以达到加快PID控制速度,降低超调等目标。目前,自适应PID控制器,一般有误差反馈调整,模糊控制器调整,神经网络调整。其中模糊控制器调整,神经网络调整较为复杂,在入门案例中不做介绍,在本课程中,我们将实现相对略微简单点的基于误差反馈调整的自适应PID控制器。

FPGA/MATLAB学习教程/源码/项目合作开发 6201

PTA浙大版《Python 程序设计》题目集

本题目集是在2021年初写的,当时受疫情影响,题目集是对所有用户开放的,后来题目集就有权限了,需要购买浙大的Python教材才能用。 题目集记录了我初学Python时的经历,所以前几道题看起来会不符合Python简洁的特性。 初学Python时,没有老师教我,完全就是在自学,所以不会做的题也会上网上搜答案,这就导致题目集中有些题和网上的很相似。 其他题目集: PTA浙大版《C语言程序设计实验与习题指导(第3版)》题目集(参考代码) PTA浙大版《C语言程序设计(第3版)》题目集(参考代码) PTA团体程序设

Re:从零开始的代码生活的博客 7276

Unreal5从入门到精通之如何实现移动端触屏滑动手势

随着移动设备的普及,越来越多的游戏和应用选择在移动平台上发布。Unreal Engine 5(UE5)作为一款强大的游戏引擎,提供了丰富的工具和功能,帮助开发者打造出色的移动体验。UE5不仅提升了图形质量,还大幅简化了开发流程,使得开发者能够更专注于游戏设计和用户体验。在移动游戏中,触屏滑动手势是用户与应用互动的主要方式之一。然而,许多开发者在实现这些功能时常常遇到困难。为了填补这一知识空白,本篇文章将详细介绍如何在UE5中实现移动端触屏滑动手势,帮助你从入门到精通,提升你的开发技能。

TxNet 1136

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

词频统计python pta,pta统计单词个数python pta浙大python

Python里,输入一个英文句子,统计并输出单词个数,怎么弄啊?python假设有一段英文,求长度为4的单词个数?1用空格分割整个英文段落,并将段落拆分成一个单列数组2遍历上述拆分数组,读取数组中每个字符串的长度3在遍历过程中,如果遇到一个长度为4的单词,则在count变量的值上加一个4输出count变量的值就是整个英文中长度为4的单词数段落1。首先,定义一个变量来保存要计数的英文文章。2. 接下...

weixin_30610771的博客 1368

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

【题解】PTA-Python题库 浙大版《Python 程序设计》题目集题解索引

编程题 标号 标题 第1章-1 从键盘输入两个数,求它们的和并输出 第1章-2 从键盘输入三个数到a,b,c中,按公式值输出 第1章-3 输出“Python语言简单易学” 第2章-1 计算 11+12+13+…+m 第2章-2 计算分段函数[1] 第2章-3 阶梯电价 第2章-4 特殊a串数列求和 第2章-5 求奇数分之一序列前N项和 第2章-6 求...

葑鈊丶 26万+

IDEA的使用指南

IDEA基于java的使用手册,可以最快速的上手,在使用中不断的丰富自己的使用技巧.

廖雪峰Python教程[完整版]

廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白

python特殊a串数列求和_【题解】PTA-Python题库 浙大版《Python 程序设计》题目集题解索引...

编程题标号标题第1章-1从键盘输入两个数,求它们的和并输出第1章-2从键盘输入三个数到a,b,c中,按公式值输出第1章-3输出“Python语言简单易学” 第2章-1计算 11+12+13+…+m 第2章-2计算分段函数[1] 第2章-3阶梯电价 第2章-4特殊a串数列求和 第2章-5求奇数分之一序列前N项和第2章-6求交错序列前N项和 第2章-7产生每位数字相同的n位数 第2章-8转换函数使用第...

weixin_39639698的博客 653

pta 词频统计

请编写程序,对一段英文文本,统计其中所有不同单词的个数,以及词频最大的前10%的单词。 所谓“单词”,是指由不超过80个单词字符组成的连续字符串,但长度超过15的单词将只截取保留前15个单词字符。而合法的“单词字符”为大小写字母、数字和下划线,其它字符均认为是单词分隔符。 输入格式: 输入给出一段非空文本,最后以符号#结尾。输入保证存在至少10个不同的单词。 输出格式: 在第一行中输出文本中所有不...

k的博客 4377

Python 程序设计搞心态题目集锦(PTA平台)

浙大版《Python 程序设计》搞心态题目集锦(NO.2) 1.请编写程序,对一段英文文本,统计其中所有不同单词的个数,以及词频最大的前10%的单词。 所谓“单词”,是指由不超过80个单词字符组成的连续字符串,但长度超过15的单词将只截取保留前15个单词字符。而合法的“单词字符”为大小写字母、数字和下划线,其它字符均认为是单词分隔符。 输入格式: 输入给出一段非空文本,最后以符号#结尾。输入保证存在至少10个不同的单词。 输出格式: 在第一行中输出文本中所有不同单词的个数。注意“单词”不区分英文大小写,例如

xianshengsan的博客 1544

Python编程PTA题解——词频统计

Description:编写程序,对一段英文文本,统计其中所有不同单词的个数,以及词频最大的前10%的单词。 所谓“单词”,是指由不超过80个单词字符组成的连续字符串,但长度超过15的单词将只截取保留前15个单词字符。而合法的“单词字符”为大小写字母、数字和下划线,其它字符均认为是单词分隔符。 Input:输入一段非空文本,最后以符号#结尾。输入保证存在至少10个不同的单词。 Output:在第一...

美好事物 7601
上一篇: 浙大PTA 第6章-8 输出全排列 (20 分)
下一篇: 浙大PTA 第6章函数-1 使用函数求特殊a串数列和 (10 分)
amateur_python
博客等级 码龄5年 118粉丝 94原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值