我是一名初学者。如何从lazySeq创建地图?
(def fields [:name :age :color])
(def values ["joe" 32 "red"])
(def record (interleave fields values))
(def mymap (into {} record)) ;; ????
;; (get mymap :age)
;; 32
答案 0 :(得分:81)
回答你的实际问题:
(apply hash-map record)
但是,由于您实际上已经有了单独的键和值,因此可以使用
(zipmap fields values)
或者如果你的心脏设置在into
,你可以
(into {} (map vector fields values))
答案 1 :(得分:1)
这根本不合理,但由于原始问题想要into
与record
一起使用:
(into {} (map vec (partition 2 record)))