7-35 jmu-JavaPython-统计文字中的单词数量并按出现次数排序
7-35 jmu-Java&Python-统计文字中的单词数量并按出现次数排序
分数 25
全屏浏览题目切换布局
作者 郑如滨
单位 集美大学
现在需要统计若干段文字(英文)中的单词数量,并且还需统计每个单词出现的次数。
注1:单词之间以空格(1个或多个空格)为间隔。 注2:忽略空行或者空格行。
基本版: 统计时,区分字母大小写,且不删除指定标点符号。
进阶版:
统计前,需要从文字中删除指定标点符号
!.,:*?
。 注意:所谓的删除,就是用1个空格替换掉相应字符。统计单词时需要忽略单词的大小写。
输入说明
若干行英文,最后以!!!!!
为结束。
输出说明
单词数量 出现次数排名前10的单词(次数按照降序排序,如果次数相同,则按照键值的字母升序排序)及出现次数。
输入样例1
failure is probably the fortification in your pole it is like a peek your wallet as the thief when you are thinking how to spend several hard-won leptawhen you are wondering whether new money it has laid background because of you then at the heart of themost lax alert and most low awareness and left it godsend failed !!!!!
输出样例1
46 the=4 it=3 you=3 and=2 are=2 is=2 most=2 of=2 when=2 your=2
输入样例2
Failure is probably The fortification in your pole! It is like a peek your wallet as the thief when You are thinking how to. spend several hard-won lepta. when yoU are? wondering whether new money it has laid background Because of: yOu?, then at the heart of the Tom say: Who is the best? No one dare to say yes. most lax alert and! most low awareness and* left it godsend failed !!!!!
输出样例2
54 the=5 is=3 it=3 you=3 and=2 are=2 most=2 of=2 say=2 to=2
思路:
1、这个题首先在于输入: python的输入是一行一行输入的,所以这里需要判断什么时候输入结束 我们使用while input!=“!!!!!”; 其次,输入需要去除一些特殊符号“!.,:*?”,需要每次输入后去符号为空格‘ ’; 这里还需要进行一个去多空格的操作,我们可以采取用新链表储存返回的方式,如果不是‘’空,则append到这个新列表中; 最后还有一个去大写为小写的操作,我们可以使用.lower()函数。、 2、这里需要统计字符个数,我采取用字典储存的方式,这样很方便统计: 依次取出处理完的列表list的元素,对其初始化到一个字典中去,使用字典的setdefault(key,value)函数; 再判断当前元素是否在这个字典中,如果在,则该字典的value+=1 3、对字典排序,这里的排序规则是对value降序同时key升序。 我采取的操作是用匿名函数和排序函数: sorted(dict,key = lamdba x:(-x[1],x[0])) #这里的-x[1]表示对字典中的value降序,x[0]表示对字典中的key升序 4、输出
代码:
# ----------输入-----------
# 处理多个空格
m = ''
def check(list):new_list = []for i in list:if i != '':new_list.append(i)return new_list
removechar = "!.,:*?"
res = []
while m != "!!!!!":m = input()if len(m) == 0:pass# 去除!.,:*?elif m != "!!!!!":for char in removechar:m = m.replace(char , '')# 去除空格,做列表m = m.split()m = check(m)for i in m:res.append(i.lower())else:pass
# --------------------------
dic_res = {}
for i in res:dic_res.setdefault(i,0)if i in dic_res:dic_res[i]+=1
print(len(dic_res))
lll=sorted(dic_res.items() , key = lambda x: (-x[1],x[0]) )
count=0
for i in lll:if count==10:breakprint(f"{i[0]}={i[1]}")count+=1
# k={'a':1,'b':2}
# print(k['a'])
7-35 jmu-JavaPython-统计文字中的单词数量并按出现次数排序相关推荐
- PTA12、 统计文字中的单词数量并按出现次数排序 (10 分)
12. 统计文字中的单词数量并按出现次数排序 (10 分) 现在需要统计若干段文字(英文)中的单词数量,并且还需统计每个单词出现的次数. 注1:单词之间以空格(1个或多个空格)为间隔. 注2:忽略空行 ...
- python统计单词出现次数并排序_7-4 jmu-JavaPython-统计文字中的单词数量并按出现次数排序 (25分)...
现在需要统计若干段文字(英文)中的单词数量,并且还需统计每个单词出现的次数. 注1:单词之间以空格(1个或多个空格)为间隔. 注2:忽略空行或者空格行. 基本版: 统计时,区分字母大小写,且不删除指定 ...
- 7-1 jmu-JavaPython-统计文字中的单词数量并按出现次数排序 (25 分)
现在需要统计若干段文字(英文)中的单词数量,并且还需统计每个单词出现的次数. 注1:单词之间以空格(1个或多个空格)为间隔. 注2:忽略空行或者空格行. 基本版: 统计时,区分字母大小写,且不删除指定 ...
- 7-3 jmu-JavaPython-统计文字中的单词数量并按出现次数排序
现在需要统计若干段文字(英文)中的单词数量,并且还需统计每个单词出现的次数. 注1:单词之间以空格(1个或多个空格)为间隔. 注2:忽略空行或者空格行. 基本版: 统计时,区分字母大小写,且不删除指定 ...
- 7-30 jmu-JavaPython-统计一段文字中的单词个数并按单词的字母顺序排序后输出 (25 分)
7-30 jmu-Java&Python-统计一段文字中的单词个数并按单词的字母顺序排序后输出 (25 分) 现需要统计若干段文字(英文)中的不同单词数量. 如果不同的单词数量不超过10个,则 ...
- 7-1 jmu-JavaPython-统计一段文字中的单词个数并按单词的字母顺序排序后输出
7-1 jmu-Java&Python-统计一段文字中的单词个数并按单词的字母顺序排序后输出 (15 分) 现需要统计若干段文字(英文)中的不同单词数量. 如果不同的单词数量不超过10个,则将 ...
- Python实现统计文本中各单词数量
Python实现统计文本中各单词数量 代码 运行结果 代码 import strings = 'not talk,not helo show me your code hello helo' for ...
- 统计一段文字中的单词个数并按单词的字母顺序排序后输出
现需要统计若干段文字(英文)中的不同单词数量. 如果不同的单词数量不超过10个,则将所有单词输出(按字母顺序),否则输出前10个单词. 注1:单词之间以空格(1个或多个空格)为间隔. 注2:忽略空行或 ...
- PTA(每日一题)7-1 jmu-JavaPython-统计一段文字中的单词个数并按单词的字母顺序排序后输出
现需要统计若干段文字(英文)中的不同单词数量. 如果不同的单词数量不超过10个,则将所有单词输出(按字母顺序),否则输出前10个单词. **注1:**单词之间以空格(1个或多个空格)为间隔. **注2 ...
最新文章
- 【计算机视觉】EmguCV学习笔记(4)分离颜色通道以及多通道图像混合
- kcf跟踪算法实例整理
- saltstack/salt的state.sls的使用
- Vim配置IDE开发环境
- 寻找两个有序数组中的中位数
- mysql修改表分界符号_mysql---触发器
- 超级好用的画图吸色工具FastSton Capture
- 程序员大保健指南,给自己的身心偶尔放松的机会
- Msm8960(APQ8064)平台的MSM-AOSP-kitkat编译适配(6):音频
- bzoj 1260 (区间dp)
- 数据线性拟合优化之路
- 游戏挂机还开着电脑?那就真的out了!
- android游戏开发教程 android游戏项目教程
- 【pytest】(六) pytest中fixture的使用
- 微信拍一拍怎么撤回(无法撤回原因是这样的)
- 从安卓recovery 的 backup 备份数据中手动恢复 通讯录、短信,或者其他软件中的信息的方法
- 计算机截图工具无法运行,win10系统打开截图工具提示“截图工具当前未在计算机上运行”的解决办法...
- 北京社保卡和医疗存折(萌新看)
- xxljob从入门到精通-全网段最全解说
- 如何查询土地规划用途_“土地调查云”——一款可以详细查询土地征收相关信息的“神器”!...
热门文章
- 用Python对微信好友进行分析
- 30天早起感悟——我为什么要早起
- 响应式设计的未来是什么?
- Springboot毕设项目风云网吧管理系统57g27(java+VUE+Mybatis+Maven+Mysql)
- testdisk-强大的磁盘恢复工具
- 二叉树--二叉搜索树
- python与erp_Python-EEG处理和事件相关电位(ERP)
- jsonObject.toJSONString() VS jsonObject.toString()
- 常见鸟的种类及特点_常见鸟的种类有哪些
- 江苏计算机一级2017年真题,2017年9月江苏计算机一级考试试题