Tengo una lista con sublistas de la siguiente manera:
result = [ ['helo', 10], ['bye', 50], ['yeah', 5], ['candy',30] ]
Quiero ordenar esto con tres condiciones: primero, por el entero más alto en el índice 2 de la lista secundaria, luego por la longitud de la palabra en el índice 1 de la lista secundaria y, finalmente, por orden alfabético en el primer índice de la lista secundaria.
Intenté hacer lo siguiente pero no funciona:
finalresult = sorted(result, key=lambda word: (-word[1], len(word), word[0]))
Esto lo ordena por el entero más alto y el orden alfabético, pero no por la longitud de la palabra.
Cualquier ayuda es apreciada. Gracias.
cada elemento es una lista de 2 elementos, ordenar por la longitud de la lista es inútil porque todos ellos tienen la misma longitud, tal vez usted quiera clasificar por la longitud del primer elemento para que
finalresult = sorted(result, key=lambda word: (-word[1], len(word[0]), word[0]))