python实验二:字符串排序

时间:2022-12-25 03:37:26
##统计word中的各个字符的出现的次数,并统计出所有前十名的字符使用次数
# -*- coding:utf-8 -*-
word='''awfesdafhjkcasadckjsdackjsadvcnksausafdsch
fsadfdsaasdfsdacsafsdaas
csaasfdasdfsda
sfadfsdafsadfjtyurjryjghnkuitki''' list1 = list(word) #将字符串转化为列表 while '\n' in list1: #去掉列表中的'\n'字符
list1.remove('\n') list2 = sorted(list1) #列表排序
list3 = list(set(list1)) #列表去重复
list4 = [] #定义两个空列表
list5 = [] for i in list3:
j = list2.count(i) #统计字符个数
list4.append((i, j)) #将字符及个数加入新列表 def recmp(x, y): #定义一个排序函数与cmp函数输出结果相反
if x < y :
return 1
if x == y:
return 0
if x > y:
return -1 list4.sort(lambda x,y:recmp(x[1],y[1])) #根据第二关键词排序
list5 = list4[:10] #取出前十项
print list5 #输出结果:
[('a', 22), ('s', 21), ('d', 16), ('f', 13), ('c', 7), ('k', 6), ('j', 6), ('h', 3), ('u', 3), ('i', 2)]