【发布时间】:2018-10-01 20:18:37
【问题描述】:
我想创建一个嵌套地图。
我的功能实现如下:
(defn thefunction [something value]
;;"something" is for i.e: (something2 something3) ;it's a seq, could have more values.
;;here I want the code to create a map like this >> {:something2 {:something3 value}}
我不知道如何实现它以获取上面的地图。我是 clojure 的新手。
谢谢。
【问题讨论】:
-
您可以使用
assoc-in来实现这一点:(assoc-in nil [:foo :bar] 1)=>{:foo {:bar 1}}。 -
@TaylorWood 我想使用 (get-in theMap [:something2 :something3]) 访问该值,但它返回 nil 因为它保存 {something2 {something3 value}} 而不是 {:something2 {: something3 值}}
-
@AgustínP。欢迎来到 Stack Overflow,我真的很高兴你从观看到发帖。你知道你可以通过在行首放四个空格来格式化你的代码片段吗?如果您包含对您正在编写的函数的示例调用,以及您认为输出的样子,它也会更容易回答。这样我就不会猜到错误的期望输出。
-
@marco.m 作业问题没有错。这就是问题的提出方式。
标签: clojure