Cómo crear una lista de valores en un diccionario de comprensión en Python
Tomando un ejemplo muy simple de recorrer una oración y crear un diccionario que mapee{x:y}
, dóndex
es una clave que representa la longitud de las palabras yy
es una lista de palabras en la oración que contienex
cantidad de letras
Entrada:
mywords = "May your coffee be strong and your Monday be short"
Rendimiento esperado:
{2: ['be', 'be'], 3: ['May', 'and'], 4: ['your', 'your'], 5: ['short'], 6: ['coffee', 'strong', 'Monday']}
Aquí hay un intento que crea una lista de valores pero la sobrescribe cada vez:
{len(x):[x] for x in mywords.split()}
{2: ['be'], 3: ['and'], 4: ['your'], 5: ['short'], 6: ['Monday']}
¿Es posible hacer esto en una línea en Python?