Dict 和 Base.Iterators.Pair in Julia 之间的区别



在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和通常的字典有什么区别?为什么我们使用这种特定类型?

在 Julia 0.7/1.0 中,关键字参数更改为存储为命名元组而不是字典。Pairs类型只是一个包装器,因此迭代为您提供键,值对(迭代命名元组只是给出值,就像迭代元组一样(。

最新更新