在 Julia 1.0 中,如何设置只有一个键值对的命名元组?



当我运行时

t = (one = "one", two = 2) typeof(t)

在 REPL 中,我得到

NamedTuple{(:one, :two),Tuple{String,Int64}}

但是当我跑步时

t = (one = "one") typeof(t)

String为类型。

是否可以设置一个只有一个命名值的命名元组,以便我可以访问例如 t[1] 和 t.one 并返回"一"?

放一个逗号,即

julia> t = (one = "one",)
(one = "one",)
julia> typeof(t)
NamedTuple{(:one,),Tuple{String}}

t = (one = "one")不起作用的原因是因为等同于t = one = "one"。因此,您正在定义两个变量,这两个变量的值均为"一"。

julia> t = (one = "one")
"one"
julia> typeof(t)
String
julia> typeof(one)
String

最新更新