Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/clojure/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Clojure 向关键字值添加函数_Clojure - Fatal编程技术网

Clojure 向关键字值添加函数

Clojure 向关键字值添加函数,clojure,Clojure,我有一个这样的地图结构 {"email@gmail.com"{:email "email@gmail.com", :password "pass"}, "email2@yahoo.com"{:email "email2@yahoo.com", :password "pass2"}, "email3@yahoo.com"{:email "email3@yahoo.com", :password "pass3"}, "email4@gmail.com"{:email

我有一个这样的地图结构

    {"email@gmail.com"{:email "email@gmail.com", :password "pass"},
    "email2@yahoo.com"{:email "email2@yahoo.com", :password "pass2"},
    "email3@yahoo.com"{:email "email3@yahoo.com", :password "pass3"},
    "email4@gmail.com"{:email "email4@gmail.com", :password "pass4"}}
如何在引用:password关键字时向所有值添加函数?我的函数有一个只接受字符串的参数…这是我尝试过的,但无法绕过它


(在mymap[:password]中更新(myfunction“此处假定为来自:password关键字的值”)

您应该分别更新每一行并进行累加,因此在列表中用
reduce
迭代,然后在
中为每个元素
更新
密码
键和
assoc
结果行

(reduce (fn[result row] 
          (assoc result  
                 (first row) ;;email
                 (update-in (second row) 
                            [:password] 
                            (fn[pass] ..do something..))))
        {}
        mymap)

您应该分别更新每一行并进行累加,因此在列表中使用
reduce
进行迭代,然后在
中为每个元素
更新
密码
键和
assoc
结果行

(reduce (fn[result row] 
          (assoc result  
                 (first row) ;;email
                 (update-in (second row) 
                            [:password] 
                            (fn[pass] ..do something..))))
        {}
        mymap)

您应该分别更新每一行并进行累加,因此在列表中使用
reduce
进行迭代,然后在
中为每个元素
更新
密码
键和
assoc
结果行

(reduce (fn[result row] 
          (assoc result  
                 (first row) ;;email
                 (update-in (second row) 
                            [:password] 
                            (fn[pass] ..do something..))))
        {}
        mymap)

您应该分别更新每一行并进行累加,因此在列表中使用
reduce
进行迭代,然后在
中为每个元素
更新
密码
键和
assoc
结果行

(reduce (fn[result row] 
          (assoc result  
                 (first row) ;;email
                 (update-in (second row) 
                            [:password] 
                            (fn[pass] ..do something..))))
        {}
        mymap)