在Julia v1.0中,当使用关键字参数时,函数中的结果结构将为Base.Iterators.Pairs类型。
julia> foo(;kwargs...) = println(kwargs)
julia> foo(a = 1, b = 2)
Base.Iterators.Pairs(:a=>1,:b=>2)
Iterators.Pairs与常规Dictionary之间有什么区别?为什么我们使用这种特定类型?
答案 0 :(得分:2)
在Julia 0.7 / 1.0中,关键字参数已更改为存储为命名元组而不是字典。 Pairs
类型只是包装器,因此迭代为您提供键,值对(在命名的元组上进行迭代只会提供值,就像在元组上进行迭代一样)。