Clojure 不知道我的代码有什么问题,返回1时应该返回5

Clojure 不知道我的代码有什么问题,返回1时应该返回5,clojure,Clojure,这与我如何从列表中调用它有关,我确信这一点。因为当我跑的时候 (defn counttrue [val] (count (filter identity '(val)))) 它很好用。在defn和计算之间,我遗漏了一些东西 我也尝试过用if%%'val运行它,我得到了相同的答案 我在这个网站上看到过类似的代码,但是没有任何代码能够回答这个问题。我是不是把val打错了?'val是一个只包含一个元素的列表:原始列表。尝试: (count (filter identity '(1 2 3 tru

这与我如何从列表中调用它有关,我确信这一点。因为当我跑的时候

(defn counttrue [val]
  (count (filter identity '(val))))
它很好用。在defn和计算之间,我遗漏了一些东西

我也尝试过用if%%'val运行它,我得到了相同的答案

我在这个网站上看到过类似的代码,但是没有任何代码能够回答这个问题。我是不是把val打错了?

'val是一个只包含一个元素的列表:原始列表。尝试:

(count (filter identity '(1 2 3 true true false nil))) 
然后:


哦,天哪,我以前做过。。。。非常感谢你,我快疯了。我会给你1分,但我的代表太低了,所以我在这里给你!工藤的朋友。
(defn counttrue [val]
  (count (filter identity val)))
(counttrue '(1 2 3 true true false nil))