Dictionary 朱莉娅:用元组值构造字典

Dictionary 朱莉娅:用元组值构造字典,dictionary,tuples,julia,Dictionary,Tuples,Julia,在Julia中是否有可能用元组值构造字典 我试过了 dict = Dict{Int64, (Int64, Int64)}() dict = Dict{Int64, Tuple(Int64, Int64)}() 我还尝试插入元组值,但我能够在插入后更改它们,使它们不是元组 有什么想法吗 编辑: 并行检查=Dict{Any,(Any,Any)}() 元组类型(即元组类型)的语法从版本0.3和更早版本中的(Int64,Int64)更改为版本0.4中的元组{Int64,Int64}。请注意,Int64

在Julia中是否有可能用元组值构造字典

我试过了

dict = Dict{Int64, (Int64, Int64)}()
dict = Dict{Int64, Tuple(Int64, Int64)}()
我还尝试插入元组值,但我能够在插入后更改它们,使它们不是元组

有什么想法吗

编辑:

并行检查=Dict{Any,(Any,Any)}()


元组类型(即元组类型)的语法从版本0.3和更早版本中的
(Int64,Int64)
更改为版本0.4中的
元组{Int64,Int64}
。请注意,
Int64,Int64
周围的大括号,而不是括号。您还可以通过将
typeof
函数应用于示例元组,在REPL中发现这一点:

julia> typeof((1,2))
Tuple{Int64,Int64}
因此,您可以这样构造所需的词典:

julia> dict = Dict{Int64,Tuple{Int64,Int64}}()
Dict{Int64,Tuple{Int64,Int64}} with 0 entries

julia> dict[1] = (2,3)
(2,3)

julia> dict[2.0] = (3.0,4)
(3.0,4)

julia> dict
Dict{Int64,Tuple{Int64,Int64}} with 2 entries:
  2 => (3,4)
  1 => (2,3)

你问题的另一部分是不相关的,但我还是要在这里回答:元组是不可变的——你不能更改元组中的一个元素。另一方面,字典是可变的,因此您可以将一个全新的元组值分配给字典中的插槽。换句话说,当你写
dict[1]=(3,5)
时,你是在赋值给
dict
,这是可以的,但是当你写
dict[1][2]=1
时,你是在
dict
中赋值给元组的位置
1
,这是不可以的。

但我用的是0.3:)谢谢。我想是的,但我不能完全确定。
julia> dict = Dict{Int64,Tuple{Int64,Int64}}()
Dict{Int64,Tuple{Int64,Int64}} with 0 entries

julia> dict[1] = (2,3)
(2,3)

julia> dict[2.0] = (3.0,4)
(3.0,4)

julia> dict
Dict{Int64,Tuple{Int64,Int64}} with 2 entries:
  2 => (3,4)
  1 => (2,3)