Clojure конвертировать lazy-seq в хэш-карту Я новичок clojure. Как создать карту из lazySeq? (def fields [:name :age :color]) (def values ["joe" 32 "red"]) (def record (interleave fields values)) (def mymap (into {} record)) ;; ???? ;; (get mymap :age) ;; 32 Ответ 1 Чтобы ответить на ваш реальный вопрос: (apply hash-map record) Но поскольку у вас уже есть отдельные ключи и значения, вы можете использовать (zipmap fields values) Или, если у вас настроено ваше сердце на into, вы можете (into {} (map vector fields values)) Ответ 2 Это неразумно, но поскольку исходный вопрос хотел использовать into с record: (into {} (map vec (partition 2 record)))
Ответ 1 Чтобы ответить на ваш реальный вопрос: (apply hash-map record) Но поскольку у вас уже есть отдельные ключи и значения, вы можете использовать (zipmap fields values) Или, если у вас настроено ваше сердце на into, вы можете (into {} (map vector fields values))
Ответ 2 Это неразумно, но поскольку исходный вопрос хотел использовать into с record: (into {} (map vec (partition 2 record)))