本文介绍了在input_string中标识唯一字母和相应的计数的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
input_string=mississippi
output_dict={letters=[i,s,p,m],count=[4,4,2,1]}
从input_string
中删除重复的条目,并对这些重复的值进行计数并以降序显示.实际的以下代码删除重复的条目,但如何计算重复的值
Remove duplicate entries from input_string
and count those duplicate values and display in descending order.actual following code remove duplicate entry but how to count the duplicate values
def mock(input_string):
a=list(input_string)
list1=[]
for i in a:
if i not in list1:
list1.append(i)
print(list1)
mock("radffffghhh")
推荐答案
d={}
for i in input_string:
d[i]=d.get(i,0)+1
按相反的值对字典进行排序
sort dict by values in reverse
sorted(d.items(), key=lambda kv: kv[1],reverse=True)#[('i', 4), ('s', 4), ('p', 2), ('m', 1)]
使用groupby
from itertools import groupby
{k:len(list(v)) for k,v in groupby(sorted(input_string))}
使用柜台
from collections import Counter
Counter(input_string)
这篇关于在input_string中标识唯一字母和相应的计数的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!