Ordenar las siguientes letras del alfabeto según cantidad de apariciones, de mayor a menor (en caso de empate, considerar órden alfabético). La respuesta debe estar en minúscula y sin letras repetidas.
rfGjnVCzqaIXuFTLfvTSVqjhlXzTUdfQzTYYJLDNWfFDiuiukjMTmPiscqQkmkKeqlKTcMlHSiAUeTrzraYraDPNhmDbIRsjDhWvFpjbNspFhUVUOTVozwvRpknJgLvCiHNewTMTvDDdFsNgdLKhSQMbvbmxDCUyOqisfzXEFkCOHRKHMbpBRNaaerQaVPdnVSOPCcy
Bueno mi pregunta es : ¿Como lo harias de la manera mas corta?
#! /usr/bin/env python3
Cadena1 = "rfGjnVCzqaIXuFTLfvTSVqjhlXzTUdfQzTYYJLDNWfFDiuiukjMTmPiscqQkmkKeqlKTcMlHSiAUeTrzraYraDPNhmDbIRsjDhWvFpjbNspFhUVUOTVozwvRpknJgLvCiHNewTMTvDDdFsNgdLKhSQMbvbmxDCUyOqisfzXEFkCOHRKHMbpBRNaaerQaVPdnVSOPCcy"
Cadena = Cadena1.lower()
list = ['a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','z','y']
canta = 0
cantb = 0
cantc = 0
cantd = 0
cante = 0
cantf = 0
cantg = 0
canth = 0
canti = 0
cantj = 0
cantk = 0
cantl = 0
cantm = 0
cantn = 0
canto = 0
cantp = 0
cantq = 0
cantr = 0
cants = 0
cantt = 0
cantu = 0
cantv = 0
cantw = 0
cantx = 0
canty = 0
cantz = 0
for x in Cadena:
if(x == list[0]):
canta +=1
a= canta
elif(x == list[1]):
cantb += 1
b= cantb
elif(x == list[2]):
cantc += 1
c= cantc
elif(x == list[3]):
cantd += 1
d= cantd
elif(x == list[4]):
cante += 1
e= cante
elif(x == list[5]):
cantf += 1
f= cantf
elif(x == list[6]):
cantg += 1
g= cantg
elif(x == list[7]):
canth += 1
h= canth
elif(x == list[8]):
canti += 1
i= canti
elif(x == list[9]):
cantj += 1
j= cantj
elif(x == list[10]):
cantk += 1
k= cantk
elif(x == list[11]):
cantl += 1
l= cantl
elif(x == list[12]):
cantm += 1
m= cantm
elif(x == list[13]):
cantn += 1
n= cantn
elif(x == list[14]):
canto += 1
o= canto
elif(x == list[15]):
cantp += 1
p= cantp
elif(x == list[16]):
cantq += 1
q= cantq
elif(x == list[17]):
cantr += 1
r= cantr
elif(x == list[18]):
cants += 1
s= cants
elif(x == list[19]):
cantt += 1
t= cantt
elif(x == list[20]):
cantu += 1
u= cantu
elif(x == list[21]):
cantv += 1
v= cantv
elif(x == list[22]):
cantw += 1
w= cantw
elif(x == list[23]):
cantx += 1
x= cantx
elif(x == list[24]):
canty += 1
y= canty
elif(x == list[25]):
cantz += 1
z = cantz
list1 = [canta, cantb, cantc, cantd, cante, cantf, cantg, canth, canti ,cantj, cantk, cantl, cantm, cantn, canto, cantp, cantq, cantr, cants, cantt, cantu ,cantv, cantw, cantx, canty, cantz]
Lista_ordenada = sorted(list1,reverse = True)
print Lista_ordenada
Ese fue mi desarrollo se que no se ve muy bien disculpen eso .
Muy aparte , No importa en que lenguaje lo desarrolles , Solo me gustaria ver la logica que emplean ya que no se me ocurre una idea de hacerlo mas corto.
Muchas gracias , Buenas noches.