Duplicar posible:
Dictionary sorting by key lengthdiccionario ordenar por longitud de clave
tengo que usar el diccionario para "buscar y reemplazar". Y quiero que primero use las teclas más largas.
Para que
text = 'xxxx'
dict = {'xxx' : '3','xx' : '2'}
for key in dict:
text = text.replace(key, dict[key])
debería devolver "3x", no "22" como lo es ahora.
Algo así como
for key in sorted(dict, ???key=lambda key: len(mydict[key])):
simplemente no puede obtener lo que hay dentro.
¿Es posible hacerlo en una cadena?
'dict' es un muy mal nombre para un diccionario, se está remedando el built-in, – jamylak
[pitón - Diccionario Clasificación por Key Largo] (http://stackoverflow.com/questions/11753758/dictionary -sorting-by-key-length) -> publicado 5 minutos antes de su pregunta – elssar
No tengo ninguna conexión con él) Por lo tanto, 'ordenó (d.iteritems(), clave = lambda x: len (x [0])) 'parece una respuesta. – Qiao