2017-02-07 14 views
0

Когда я попытался сделать:Как инициализировать словарь в Джулии?

d = {1:2, 3:10, 6:300, 2:1, 4:5} 

Я получаю ошибку:

syntax: { } vector syntax is discontinued 

Как инициализировать словарь в Джулию?

+2

Там это различные способы инициализации словаря в Julia. Эта тема, как представляется, хорошо освещена в [документации] (http://docs.julialang.org/en/stable/stdlib/collections/#associative-collections). AFAIK Julia никогда не использовала этот синтаксис Python для инициализации своих словарей. –

+1

@ajcr был очень похожий синтаксис в ранних версиях (то есть до 0,4), но, по общему признанию, с '=>' вместо ':' (т. Е. 'D = {1 => 2, 3 => 10}'). Но да, теперь это устарело. –

+0

Ах, я не знал об этом синтаксисе в более ранних версиях - спасибо за указание на это. –

ответ

6

Синтаксис {} устарел в julia на некоторое время. Способ построить Dict сейчас:

Given a single iterable argument, constructs a Dict whose key-value pairs are taken from 2-tuples (key,value) generated by the argument.

julia> Dict([("A", 1), ("B", 2)]) 
    Dict{String,Int64} with 2 entries: 
    "B" => 2 
    "A" => 1 

Alternatively, a sequence of pair arguments may be passed.

julia> Dict("A"=>1, "B"=>2) 
    Dict{String,Int64} with 2 entries: 
    "B" => 2 
    "A" => 1 

(как указано в документации, которую можно получить, нажав ? в терминале для доступа в режим «помощи», а затем введите Dict)