gpt4 book ai didi

clojure - 带有多值键的 zipmap

转载 作者:行者123 更新时间:2023-12-05 02:24:00 27 4
gpt4 key购买 nike

以下内容:

(zipmap '(:a :b :c :c) '(1  2  3  4))

评估为:{:c 4, :b 2, :a 1}

我想得到:

{:c '(3 4) :b '(2) :a '(1)}

相反。

我应该如何定义我自己的 zipmap,它接受两个列表并返回一个具有多个键值的映射?

最佳答案

这样就可以了

(defn zippy [l1 l2]
(apply merge-with concat (map (fn [a b]{a (list b)}) l1 l2)))
;;; ⇒ #'user/zippy

(zippy '(:a :b :c :c) '(1 2 3 4))
;;; ⇒ {:c (3 4), :b (2), :a (1)}

关于clojure - 带有多值键的 zipmap,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17134771/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com