从clojure集中取N个非空项

时间:2013-07-23 13:16:32

标签: collections clojure

我有一套(我认为)的物品;类似于:

(def a ({:answers 3 :comments 12} {} {} {:answers 43 :comments 23} {}))

我想理想地删除该列表中的所有空项目,但保持设置完好无损..我想要做的是:

(defn drop-empty-items
 [a]
 (take-when #(not empty? %) a))

但这显然根本不起作用..

请问我该怎么做?

我正在尝试返回一些效果:

({:answers 3 :comments 12} {:answers 43 :comments 23})

来自drop-empty-items

1 个答案:

答案 0 :(得分:2)

(def a '({:answers 3 :comments 12} {} {} {:answers 43 :comments 23} {}))

(remove empty? a) 
;=> ({:answers 3, :comments 12} {:answers 43, :comments 23})