Size: a a a

Язык программирования Julia / Julia programming language

2020 December 24

ДН

Даниил Николаев... in Язык программирования Julia / Julia programming language
Проблема в том что через get set получится ужасный код, т.к мне нужен defaultdict в defaultdict
источник

АО

Андрей Оськин... in Язык программирования Julia / Julia programming language
Точнее даже get! - это очень удобная операция, она либо возвращает значение, если оно существует, либо создаёт запись с новым ключом в котором прописывается дефолтное значение.
источник

АО

Андрей Оськин... in Язык программирования Julia / Julia programming language
Да вроде не так уж и ужасно.


x = get!(clsweights, :test, Dict{String, Int}())
get!(x, "asd", 0)
источник

АО

Андрей Оськин... in Язык программирования Julia / Julia programming language
Можно этот двойной словарь запихнуть в структуру и сделать к ней функцию get(m::MyStruct, key1, key2)
источник

ДН

Даниил Николаев... in Язык программирования Julia / Julia programming language
Андрей Оськин
Да вроде не так уж и ужасно.


x = get!(clsweights, :test, Dict{String, Int}())
get!(x, "asd", 0)
а потом ещё надо += 1
источник

АО

Андрей Оськин... in Язык программирования Julia / Julia programming language
x["asd"] = get(x, "asd", 0) + 1
источник

ДН

Даниил Николаев... in Язык программирования Julia / Julia programming language
При присвоении x значение get! не копируется?
источник

AP

Alexander Plavin in Язык программирования Julia / Julia programming language
да вообще можно Dict{Tuple, Int} вместо вложенного сделать
источник

АО

Андрей Оськин... in Язык программирования Julia / Julia programming language
Да, это тоже хорошая идея.
источник

ДН

Даниил Николаев... in Язык программирования Julia / Julia programming language
Alexander Plavin
да вообще можно Dict{Tuple, Int} вместо вложенного сделать
Это как?
источник

ДН

Даниил Николаев... in Язык программирования Julia / Julia programming language
Не совсем понял идею
источник

AP

Alexander Plavin in Язык программирования Julia / Julia programming language
ну чтобы ключи были таплами: типа d[(:test, "asd")] = 0
источник

ДН

Даниил Николаев... in Язык программирования Julia / Julia programming language
Ааа, очень верно
источник

AP

Alexander Plavin in Язык программирования Julia / Julia programming language
это тип Dict{Tuple{Symbol, String}, Int}
источник

ДН

Даниил Николаев... in Язык программирования Julia / Julia programming language
Сейчас так попробую
источник

AP

Alexander Plavin in Язык программирования Julia / Julia programming language
по производительности, если важно, зависит от сценария - иногда один вариант из этих быстрее будет, иногда другой
источник

АО

Андрей Оськин... in Язык программирования Julia / Julia programming language
Бывают случаи, когда вложенные словари быстрее плоского?
источник

АО

Андрей Оськин... in Язык программирования Julia / Julia programming language
Если нет сильного переноса по вычислению хэша, то два прыжка должны быть гарантированно хуже одного.
источник

AP

Alexander Plavin in Язык программирования Julia / Julia programming language
если часто нужно обращаться к разным элементам d["abc"][x] для разных x
источник

АО

Андрей Оськин... in Язык программирования Julia / Julia programming language
👍
источник