clojure - 如何在 map 内创建 map ?

标签 clojure

我有一张包含电子邮件和密码的 map ,看起来像这样......

 {"email1" "password1","email2" "password2","email3" "password3"}

我需要在 map 中制作一张 map ,其中将包含电子邮件作为关键字(我想我解释得很好,我是 clojure 的新手)。

如何使用这些值创建 map ?
 {"email1" {"email1" "password1"},"email2" {"email2" "password2"},"email3" {"email3" "password3"}}

我试过 zipmap 但我得到的是矢量而不是 map ...
 {"email1" ["email1" "password1"],"email2" ["email2" "password2"],"email3" ["email3" "password3"]}

最佳答案

(def m {"email1" "password1","email2" "password2","email3" "password3"})

(into {} (map (fn [[k v]] [k {k v}]) m))
;= {"email2" {"email2" "password2"}, "email1" {"email1" "password1"}, "email3" {"email3" "password3"}}

关于clojure - 如何在 map 内创建 map ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23072521/

相关文章:

java - Clojure 无法在 OS X 上打印非 ASCII 字符

shell - clojure:异步生成进程

clojure - 护栏驱动开发的范围 - 测试和类型?

haskell - Clojure 中的 mapcat 和 Haskell 中的 concatmap 有什么区别?

html - 如何在html中显示html?

clojure - 为什么 (reduce * []) 的计算结果为 1?

clojure - 如何将关键字转换为字符串并保留冒号

clojure - 如何在 Clojure 中捕捉 CTRL+C?

clojure - Clojure 表单是数据还是类型?

clojure - 如何在 Clojure 中获取字符的 ascii 十进制值?