如何从给定另一个列表的哈希映射列表中筛选所有元素?Clojure

如何从给定另一个列表的哈希映射列表中筛选所有元素?Clojure,clojure,Clojure,考虑以下几点: list of hashmaps '({:key 1 :other-key "hello"} {:key 2 :other-key "bye"}) some list of keys: '(1) ;; I want the result to be: [{:key 1 :other-key "hello"}] 有没有一种简单的方法可以过滤掉这个问题?最后做了如下工作: (filter #(some #{(:key %)} some-list) list-of-hashmaps)

考虑以下几点:

list of hashmaps '({:key 1 :other-key "hello"} {:key 2 :other-key "bye"})
some list of keys: '(1)
;; I want the result to be:
[{:key 1 :other-key "hello"}]

有没有一种简单的方法可以过滤掉这个问题?

最后做了如下工作:

(filter #(some #{(:key %)} some-list) list-of-hashmaps)
(def l1 '({:key 1, :other-key "hello"} {:key 2, :other-key "bye"}))
(def l2 '(1))

(filter #(contains? (set l2) (:key %)) l1)

最后做了这样的事情:

(filter #(some #{(:key %)} some-list) list-of-hashmaps)
(def l1 '({:key 1, :other-key "hello"} {:key 2, :other-key "bye"}))
(def l2 '(1))

(filter #(contains? (set l2) (:key %)) l1)

最后做了这样的事情:

(filter #(some #{(:key %)} some-list) list-of-hashmaps)
(def l1 '({:key 1, :other-key "hello"} {:key 2, :other-key "bye"}))
(def l2 '(1))

(filter #(contains? (set l2) (:key %)) l1)

最后做了这样的事情:

(filter #(some #{(:key %)} some-list) list-of-hashmaps)
(def l1 '({:key 1, :other-key "hello"} {:key 2, :other-key "bye"}))
(def l2 '(1))

(filter #(contains? (set l2) (:key %)) l1)

你可以这样做:

(filter #(some #{(:key %)} some-list) list-of-hashmaps)
(def l1 '({:key 1, :other-key "hello"} {:key 2, :other-key "bye"}))
(def l2 '(1))

(filter #(contains? (set l2) (:key %)) l1)

你可以这样做:

(filter #(some #{(:key %)} some-list) list-of-hashmaps)
(def l1 '({:key 1, :other-key "hello"} {:key 2, :other-key "bye"}))
(def l2 '(1))

(filter #(contains? (set l2) (:key %)) l1)

你可以这样做:

(filter #(some #{(:key %)} some-list) list-of-hashmaps)
(def l1 '({:key 1, :other-key "hello"} {:key 2, :other-key "bye"}))
(def l2 '(1))

(filter #(contains? (set l2) (:key %)) l1)

你可以这样做:

(filter #(some #{(:key %)} some-list) list-of-hashmaps)
(def l1 '({:key 1, :other-key "hello"} {:key 2, :other-key "bye"}))
(def l2 '(1))

(filter #(contains? (set l2) (:key %)) l1)