我使用 zip()
像这样从两个数组创建了一个字典
list1 = [1,2,3,4,5]
list2 = [6,7,8,9,19]
dictionary1 = Dict(zip(list1,list2))
现在我想按 key(list1)
或 list2
对该字典进行排序。有人可以告诉我一种方法或功能,如何实现它吗?
最佳答案
Sort 还采用 by
关键字,这意味着您可以执行以下操作:
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)
另请注意,DataStructures.jl 中有一个 SortedDict
,它维护排序顺序,还有一个 OrderedDict
,它维护插入顺序。最后,有一个拉取请求,允许直接对 OrderedDicts
进行排序(但我需要完成并提交它)。
关于sorting - 是否可以在 Julia 中对字典进行排序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29848734/