词频统计 | 您所在的位置:网站首页 › 杭州公交地图 › 词频统计 |
从键盘读入由仅由英文构成的多行文本,借助于字典统计其中每个单词出现的次数。然后按字典递增序按格式输出每个单次出现的次数。 要求:1. 所有单词不区分大小写,输出时按小写格式输出;2. 需要排除! , : ?等英文符号,即这些符号不应作为单词的构成部分;3. 需要排除0,1,2,... 9等数字,即这些数字不应作为单词的构成部分。 输入格式:行数n第1行内容第2行内容....第n行内容 输出格式:单词1 单词1出现次数单词2 单词2出现次数...单词k 单词k出现次数 注意: 单词1, 2,.... k 按字典递增序。 输入样例: 4 Hello! baby! Jupyter 4 class class ultimately. class jupyter 输出样例: baby 1 class 3 hello 1 jupyter 2 ultimately 1 结尾无空行答案示例: #author:程相博 n=int(input()) dict_p={} t=0 for i in range(n): m=input().split() #舍弃题中标点并判断是否为中英字符 for j in m: j=j.replace('!','').replace('.','').replace(',','') if j.isalpha()==True: j=j.lower() #dictname[key]=dictname.get(key,defalut)+1:向字典中添加元素,若新增的value找不到对应的key,则返回defalut初始值. dict_p[j]=dict_p.get(j,0)+1 #字典按指定位x[0]值排序. dict_p_order=sorted(dict_p.items(),key=lambda x:x[0],reverse=False) #此处应用傻逼方法舍弃空行. for k,v in (dict_p_order)[0:-1]: print(f'{k} {v}') for k,v in (dict_p_order)[-1:-2:-1]: print(f'{k} {v}',end='') |
今日新闻 |
推荐新闻 |
专题文章 |
CopyRight 2018-2019 实验室设备网 版权所有 |