Solución:
Ordenar también requiere by
palabra clave, lo que significa que puede hacer:
julia> sort(collect(dictionary1), by=x->x[2])
5-element Array{Tuple{Int64,Int64},1}:
(1,6)
(2,7)
(3,8)
(4,9)
(5,19)
También tenga en cuenta que hay un SortedDict
en DataStructures.jl, que mantiene el orden de clasificación, y hay un OrderedDict
que mantiene inserción pedido. Finalmente, hay una solicitud de extracción que permitiría la clasificación directa de OrderedDicts
(pero necesito terminarlo y comprometerlo).
Tiempo SortedDict
puede ser útil si es necesario mantener el diccionario ordenado, a menudo solo es necesario ordenar el diccionario para la salida, en cuyo caso, lo siguiente puede ser lo que se requiere:
list1 = [1,2,3,4,5]
list2 = [6,7,8,9,19]
dictionary1 = Dict(zip(list1,list2))
sort(collect(dictionary1))
… que produce:
5-element Array{(Int64,Int64),1}:
(1,6)
(2,7)
(3,8)
(4,9)
(5,19)
Podemos ordenar por valores con:
sort(collect(zip(values(dictionary1),keys(dictionary1))))
… lo que da:
5-element Array{(Int64,Int64),1}:
(6,1)
(7,2)
(8,3)
(9,4)
(19,5)
¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)