tea*_*m17 14 sorting dictionary data-structures julia
我创建了一个字典使用两种阵列zip()状
list1 = [1,2,3,4,5]
list2 = [6,7,8,9,19]
dictionary1 = Dict(zip(list1,list2))
Run Code Online (Sandbox Code Playgroud)
现在我想按key(list1)或通过这个词典排序list2.有人可以告诉我一个方法或功能,如何实现它?
kms*_*ire 17
(想给@ Simon的答案添加评论,但不够代表)
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)
Run Code Online (Sandbox Code Playgroud)
另请注意,SortedDictDataStructures.jl 中有一个维护排序顺序,并且OrderedDict维护插入顺序.最后,有一个拉取请求,允许直接排序OrderedDicts(但我需要完成并提交它).
虽然SortedDict有必要对字典进行排序可能很有用,但通常只需要对字典进行排序以进行输出,在这种情况下,可能需要以下内容:
list1 = [1,2,3,4,5]
list2 = [6,7,8,9,19]
dictionary1 = Dict(zip(list1,list2))
sort(collect(dictionary1))
Run Code Online (Sandbox Code Playgroud)
......产生:
5-element Array{(Int64,Int64),1}:
(1,6)
(2,7)
(3,8)
(4,9)
(5,19)
Run Code Online (Sandbox Code Playgroud)
我们可以按以下值排序:
sort(collect(zip(values(dictionary1),keys(dictionary1))))
Run Code Online (Sandbox Code Playgroud)
... 这使:
5-element Array{(Int64,Int64),1}:
(6,1)
(7,2)
(8,3)
(9,4)
(19,5)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5297 次 |
| 最近记录: |