在clojure中,如何访问并返回此集合的修改版本

在clojure中,如何访问并返回此集合的修改版本,clojure,maps,iteration,Clojure,Maps,Iteration,如果我有一个像这样的集合({:a1:b2:Goal 5}{a:2:b4:Goal 2})有没有一种方法可以遍历它并使用assoc将所有:Goal更改为其他值,比如0? 因此,基本上给定上面的集合和键:Goal,函数返回({:a1:b2:Goal 0}{A:2:b4:Goal 0}) 感谢您的帮助 谢谢 (let [A '({:A 1 :B 2 :Goal 5} {:A 2 :B 4 :Goal 2})] (map #(assoc % :Goal 0) A)) 或者,如果您热衷于使用sp

如果我有一个像这样的集合
({:a1:b2:Goal 5}{a:2:b4:Goal 2})
有没有一种方法可以遍历它并使用
assoc
将所有
:Goal
更改为其他值,比如0? 因此,基本上给定上面的集合和键
:Goal
,函数返回
({:a1:b2:Goal 0}{A:2:b4:Goal 0})

感谢您的帮助

谢谢

(let [A '({:A 1 :B 2 :Goal 5} {:A 2 :B 4 :Goal 2})]
    (map #(assoc % :Goal 0) A))
或者,如果您热衷于使用specter:

(let [A '({:A 1 :B 2 :Goal 5} {:A 2 :B 4 :Goal 2})]
    (setval [ALL :Goal] 0 A))