如何用Python实现输入的字符串所出现的各字母频率排序?

1:如何用Python实现输入的字符串所出现的各字母频率排序(降频排序)?2:相同频率的字母按照字母表顺序排列,比如b出现3次,a也出现3次,a要排在b前年输出。例子如图。图片说明

3个回答

用dict存放字母跟次数的映射,然后用sort排序处理一下

martinnnu
Tudouxiong001 Counter({'d': 5, 'c': 3, 'a': 3, 'b': 3, 'e': 1}) dict_keys(['c', 'e', 'a', 'd', 'b'])接下来怎么用sort处理?
接近 3 年之前 回复

图片说明
接下来怎么用sort处理?

qq_28304687
苏酒酒 sorted(dict_keys, key=lambda counter: counter.__getitem__)
接近 3 年之前 回复
oyljerry
oyljerry sort时指定排序规则。用lamda等
接近 3 年之前 回复

http://blog.csdn.net/eddy_zheng/article/details/47336271
collections.Counter可以的到每个单字人数量,默认就自动排序了

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
统计字符串各字母出现的频率
如何统计一个字符串各个字母出现的频率? 现在让我们从键盘任意输入一个字符串,我们想要把各个字母出现的频率表示出来,我们可以用一个数组把结果储存起来,我们取 int 型的数组大小为26,则按顺序从数组下标0 ~ 25分别存储 A ~ Z字母出现的个数;显然,既然要计数,则数组的每个元素的初始值为0;最后通过一个循环即可计数了! 下面给出基本算法: #include #include
字符串统计字母出现的频率
C语言实现的简单的字符串统计子字母出现的频率
字母出现频率统计用python实现
def processLine(line, CharacterCounts): for character in line: if ord(character) in range(97, 123): CharacterCounts[character] += 1 #创建字母字典 def createCharacterCounts(Charact
shell脚本之按字母出现频率降序排序。
1 #!/bin/bash 2 3 while read line 4 do 5 for i in `seq 1 ${#line}` 6 do 7 a=`echo "${line}" | cut -c $i`...
统计输入的字符串中字母的频率
各位高手帮小弟编个程序啊rnrn 统计输入的字符串中字母的频率rn rn从键盘上输入一个字符串,该字符串全部由英语字母组成,长度不超过30个字符,以“%”字符作为输入结束的标志(字符“#”不作为字符串的字符)。要求程序能够完成:rn1.输入时若输入了字母或“#”以外的字符,应给出出错信息,重新输入。rn2.统计输入字符串中没个字母出现的次数,并按次数值由大到小的顺序输出结果.rn
统计字符串中各英文字母出现的频率并按频度排序
直接上代码 public class StringTest {          /**      * 任意给定英文字符串,求出各个字母出现的次数,并按照字母出现的次数从高到低排序。      * 思路:      * 1、先建立一个map,存储对应的字母以及次数 key-value,      * 2、自定义一个value的比较器Comparator,实现map按照key对应的value值排序...
如何用python实现自动化输入?
在一个测试用例中,需要点击几个批处理(.bat)文件以启动几个进程,然后在一个进程显示的控制台窗口中选择某个选项,然后根据提示输入相应的参数。rnrn现在需要把这个测试用例转成自动化执行,要求自动启动进程并自动选择某项,自动输入参数,具体选择和输入参数由配置文件来驱动。rnrn请问如何用python来实现这个自动化用例?
如何用指针数组输入字符串?
Void get(char * p[ ],int n)nn for(int i=0;i>p[i];n nn总是有问题,怎么处理,求大神求解
如何用python实现一行两个输入
前几天突发奇想要用python做SDNU OJ的题,就是最简单的那道1001,然而错了==原因就在于命题要求在同一行中输入,而我的代码用了两个input,于是RE了。因为在python中如果用两个input,那么第一个input的截取部分是空格前的那个数值没错,但是直到输入一个回车后才会用第二个input截取第二个数值。于是上网查了在同一行中输入两个数值的办法。方法是用input().split(
依据输入的字符串各字母的出现频度构造赫夫曼树,输出每个字母的赫夫曼编码
我自己做了一个,可以运行,但实现不了功能,望高人指点。。rn#includern#includern#includern#define M 100rntypedef structrn int weight;rn int parent,lchild,rchild;rnHTNode,*Huffmantree;rntypedef char* *Huffmancode;rnrnstructrn char letter;rn int count;rna[M];rnvoid HuffmanCoding(Huffmantree HT,Huffmancode HC,int w[],int n)rn//w存放n个字符的权值,构造赫夫曼树HT,并求出n个字符的赫夫曼编码HCrn int i,k,m,m1,m2,s1,s2,start,c,f;rn Huffmantree p;rn char *cd;rn if(n<=1) return;rn m=2*n-1;rn HT=(Huffmantree)malloc((m+1)*sizeof(HTNode));//第0号单元未用rn for(p=HT,i=1;i<=n;++i,++p)rn rn p->weight=w[i-1];rn p->parent=0;rn p->lchild=0;rn p->rchild=0;rn rn for(;i<=m;++i,++p)rn rn p->weight=0;rn p->parent=0;rn p->lchild=0;rn p->rchild=0;rn rn //建赫夫曼树rn //在HT[1...n]中选择parent为0且weight最小的两个节点,其序号分别为s1和s2rn for(i=n+1;i<=m;++i)rn rn m1=m2=30000;rn s1=s2=0;rn for(k=1;k<=i-1;k++)rn rn if(HT[k].parent==0&&HT[k].weight
如何用python实现文本处理
2012-04-18 12:33:33 192.168.13.106 218.16.121.240 80rn2012-04-18 12:33:43 192.168.13.106 110.75.187.22 80rn2012-04-18 12:34:13 192.168.65.27 192.168.0.188 443rn2012-04-18 12:34:27 192.168.40.117 192.168.0.174 80rn2012-04-18 12:35:39 192.168.20.109 119.147.113.98 80rn2012-04-18 12:35:59 192.168.20.109 119.147.113.98 80rn2012-04-18 12:36:13 192.168.65.27 192.168.0.189 443rn2012-04-18 12:36:20 192.168.13.106 113.11.195.106 80rn2012-04-18 12:36:26 192.168.50.112 192.168.0.174 80rn2012-04-18 12:36:33 192.168.50.146 118.186.66.51 80rn2012-04-18 12:36:43 192.168.30.105 192.168.0.174 80rn2012-04-18 12:36:53 192.168.50.145 119.147.194.250 80rn2012-04-18 12:37:01 192.168.40.105 192.168.0.174 80rn2012-04-18 12:37:12 192.168.13.106 182.50.0.106 80rn2012-04-18 12:37:33 192.168.13.106 182.50.0.106 80rn2012-04-19 12:34:13 192.168.65.27 192.168.0.188 443rnrnrn文本格式如上所示rn希望统计出后三段相同的 他们的时间间隔有没有一定的周期rn思路如下:rn1、提取后三段相同的,列到一起rn2、后三段相同的 他们的时间做差(这里会有跨天发生,python如何实现跨天的减法?)rn3、统计出现最多的时间间隔所占的百分比,如果大于90%,就将此段信息输出到high.txt 并返回1rn 大于60%小于90% 输出到middle.txt 返回0rn 小于60%,输出到low.txtrnrn等于说最后三个txt的格式应为(随便举例):rnhigh.txtrn192.168.13.106 182.50.0.106 80,95%rnmiddle.txtrn192.168.65.27 192.168.0.188 443,70%rnlow.txtrn192.168.65.27 192.168.0.188 443,30%rnrnrn
根据字符出现频率排序
【题目】 给定一个字符串,请将字符串里的字符按照出现的频率降序排列。 【示例1】 输入:&amp;amp;quot;tree&amp;amp;quot; 输出:&amp;amp;quot;eert&amp;amp;quot; 解释: 'e'出现两次,'r'和't'都只出现一次。 因此'e'必须出现在'r'和't'之前。此外,&amp;amp;quot;eetr&amp;amp;quot;也是一个有效的答案。 【示例2】 输入:&amp;amp;quot;cccaaa&amp;amp;q
js实现找出字符串中出现频率最高的字母
今天看了网上的面试题,有这一道,就自己写了一下,如果有更便捷性能更好的欢迎交流。 &amp;lt;script&amp;gt; let s=&quot;hasdfhdsfjhdjfaleeee&quot;; let ss=s.split(''); console.log(ss); //输出分割后的数组 let f={}; for(let i=0;i&amp;lt;ss.length;i+...
Python 中找出字符串中出现频率最高的字母
发现一个学Python的好网站 https://py.checkio.org 第一题大概意思就是找出一个字符串中出现频率最高字母 我的思路也是直接,弄个字典,遍历字符串,将键值对填进字典里,健就是字母,值就是出现了几次,再查下字典里最大的值即可。 上我的代码 import re, string def checkio(text): #先变小写再排序 text =&amp;quot;&amp;quot;.j...
输入排序字母做判据
输入包括多组测试数据。 每组输入第一行是两个正整数N和M(0 &amp;lt; N &amp;lt;= 30000,0 &amp;lt; M &amp;lt; 5000),分别代表学生的数目和操作的数目。 学生ID编号从1编到N。 第二行包含N个整数,代表这N个学生的初始成绩,其中第i个数代表ID为i的学生的成绩 接下来又M行,每一行有一个字符C(只取‘Q’或‘U’),和两个正整数A,B,当C为'Q'的时候, 表示这是一条询...
前端统计字符串出现频率
统计字符串中每个字符的出现频率,返回一个 Object,key 为统计字符,value 为出现频率 1. 不限制 key 的顺序 2. 输入的字符串参数不会为空 3. 忽略空白字符 统一思想,将字符串进行遍历,初始化一个object对象,当对象中存在key时key++,不存在key=1; 利用for循环方法 function count(str){ var str = 'Hello...
js统计字符串出现的频率
var str='asiisaosdissaidisdhfui'; var arr=str.split(''); str=arr.sort().join(''); var value=[]; var index=0; var re=/(\w)\1*/g; str.replace(re,function($0,$1){ // alert($0); // alert($1); if(index<
找出第一个出现频率最高的字母
/** * 第一个出现频率最高的字母 * String s = &quot;abcdebc&quot;; * @param str * @return */ public static String firstFrequent(String str) { LinkedHashMap&amp;lt;Character, Integer&amp;gt; map =...
计算文件的26个字母出现的频率
来自solelearn appdef count_char(text,char): count = 0 for c in text: if c==char: count+=1 return count fimename = input(&quot;Enter a filename:&quot;) with open(fimename) as f: ...
python实现统计文本中单词出现的频率
#coding=utf-8 import os from collections import Counter sumsdata=[] for fname in os.listdir(os.getcwd()): if os.path.isfile(fname) and fname.endswith('.txt'): with open(fname,'r') as fp: ...
这样的字符串如何用JS排序?
例如rn123Y-3452001rn098T-4589002rn345Z-1209003rn这样的字符串 我想通过JS 对上面的字符串排序rn要求是按照字符串[color=#FF0000]最后三位[/color]的顺序排序rn谢谢了~
统计一段字符串中单词和字母各出现的次数
各个字母出现的次数各个单词出现的次数 以及相应的获取Map中的值
C语言输入英文统计单词的出现的频率排序
编写一个程序,其功能是将用户输入的一段英文(注意包含空格、逗号、句号及英文字母)分离出单词,并以每个单词出现的次数从高到低输出单词极其次数,次数相同的单词以其对应的字符串大小升序输出 #include #include   #define MAX 100 void Getsen(char s[]);                              //接受输入句
用户输入的字符串的排序
对用户的输入字符串进行排序(没积分了 所以赚几个积分)
输入两个字符串,交换打印字符串字母
做Calix实习生面试题,其中一题是这样的:输入两个字符串,交替打印; 如:abc,def,则打印出adbecf                av,defg  ,则打印出advefg static String mergeStrings(String a, String b) { StringBuffer sb=new StringBuffer(); char[] aStr=a.t
输入字符串,返回字符串前三字母
//函数,输入字符串,返回字符串前三字母 public function getStoreName($str){ $one = mb_substr($str, 0, 1, 'utf-8'); $two = mb_substr($str, 1, 2, 'utf-8'); $three = mb_substr($str, 2, 3, 'utf-...
C#数据结构:统计输入字符串中各不同字符的出现频率
设计一个算法,统计在输入的字符串中各个不同字符出现的频度。(字符串中合法字符为A~Z这26个字母和0~9这10个数字)
如何用python实现一个功能
解析一个网址url生成的xml 获取xml中节点的值放在列表中
如何用python实现MTU探测
请大神指点,如何实现用python实现MTU探测![图片说明](http://forum.csdn.net/PointForum/ui/scripts/csdn/Plugin/001/face/2.gif)表示不是很懂…………
请教:如何用python实现聚合?
请教:如何用python实现聚合?
如何用python实现 rename功能?
要求支持通配符,高手给个方法
如何用python实现修改xml文件?-------------------------
如何用python实现修改xml文件?-------------------------rnrnrnrn谢谢
字母频率统计
#include&amp;lt;stdio.h&amp;gt;int zimsz[26];int main(){ int i,j; int chtod; ////ascii  char zif; int maxzf = 0; ////最高  freopen(&quot;in.txt&quot;,&quot;r&quot;,stdin); for(i=0;i&amp;lt;26;i++) zimsz[i] = 0; ///////初始化 while(sc...
记录字符串字母出现的次数。
package map; import java.util.Iterator; import java.util.Map; import java.util.TreeMap; /*  &quot;aadsuifbnsiubfbisdkbhk&quot;  *     打印字符出现的次数 如(a(2)  b(4))  *  从小到大排序输出字符出现的次数(选用TreeMap)  *    *  这个集合最终应该存储...
软件发布:字母频率检测
详细资料请访问:http://www.csdn.net/cnshare/soft/9/9926htmlrn软件简介:字母频率检测,我用了莎士比亚的作品做测试,结果顺序是e,s,t等等.........
单词字母频率统计.单词字母频率统计
单词字母频率统计单词字母频率统计单词字母频率统计单词字母频率统计单词字母频率统计单词字母频率统计单词字母频率统计单词字母频率统计单词字母频率统计单词字母频率统计
如何用datagrid的排序
我用datagrid显示数据库中的一个产品表t_Project,这个产品表的关键字段是F_Number,我用F_number排序,想在datagrid加上一个序号应该如何做rn表中的数据如下,rnF_number,F_Namern2002bs1 产品1rn2002cx2 产品2rnrnrndatagrid显示的结果是rn序号 编号 名称rn1 2002bs1 产品1rn2 2002cx2 产品2rn
如何用=>排序?
[code=csharp]rn ArrayList myArray = new ArrayList();rn List list1 = new List 11.6, 10.23, 10.84, 9.7 ;rn List list2 = new List "Green", "Red", "Apple", "Noddle" ;rnrn myArray.Add(list1);rn myArray.Add(list2);rn[/code]rnrn如何根据list1里面的值的大小,把list2的字符串排序? 不加进ArrayList(移除myArray ),直接排序行不行?rnrn这次我要测试代码通过再结贴。
js 字符串计算各字母出现次数
  最近,做到这样的一道编程题,这里做个总结分享。   问题是:使用 JS 编码,完成一个函数,函数功能是输入字符串,计算各字母出现的次数,以对象的形式输出,例如输入“xyzzyxyz”,得到 {x: 2, y: 3, z: 3}。 思路一 创建一个目标结果对象(即最后函数返回值,代码中为 result); 循环遍历字符串(传入的参数, str),结果对象(result)里存在该字母,...
画直方图统计各字母出现次数
本代码画直方图统计各字母出现次数,使用者可以根据自己需要进行修改
相关热词 c#检测非法字符 c#双屏截图 c#中怎么关闭线程 c# 显示服务器上的图片 api嵌入窗口 c# c# 控制网页 c# encrypt c#微信网页版登录 c# login 居中 c# 考试软件