python实验二:字符串排序

##统计word中的各个字符的出现的次数,并统计出所有前十名的字符使用次数
# -*- coding:utf-8 -*-
word='''awfesdafhjkcasadckjsdackjsadvcnksausafdsch
fsadfdsaasdfsdacsafsdaas
csaasfdasdfsda
sfadfsdafsadfjtyurjryjghnkuitki'''

list1 = list(word)  			#将字符串转化为列表

while '
' in list1:			#去掉列表中的'
'字符
	list1.remove('
')

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)]

  

原文地址:https://www.cnblogs.com/rohero/p/6145736.html