如何在julia中获得字典的大小?

  • 本文关键字:字典 julia dictionary julia
  • 更新时间 :
  • 英文 :


如何在julia中获得字典的大小?size()抛出错误。

julia> d = Dict(:x => 1, :y => 2)
julia> size(d)
MethodError: no method matching size(::Dict{Symbol,Int64})

使用length()

julia> d = Dict(:x => 1, :y => 2)
julia> length(d)
2

size()不工作的原因是,大小是用来给容器的尺寸。来自文档:

size(A::AbstractArray, [dim])

返回一个包含a的维度的元组。您也可以指定一个维度来获取该维度的长度。

length(A::AbstractArray)

返回数组中元素的个数,默认为prod(size(A))。

字典的关键在于它们实际上没有维度。当然,您可以将它们表示为一维,但这会忽略一个事实,即字典值可以具有"维度",而不一定是统一的。例如,这个字典应该有哪些维度?两个?用户可能会错误地认为他们可以访问dict[:a][1]:

julia> dict = Dict(:a => 1, :b => [1, 2])
Dict{Symbol,Any} with 2 entries:
:a => 1
:b => [1, 2]

最新更新