我可以写一个像这样的函数
(define (bool-num x) (if x 1 0))
(define (cnt-true lst)
(foldl + 0 (map bool-num lst)))
但我发现不优雅,因为球拍有count
函数和false?
,但没有true?
所以我可以计算假元素的数量:
(count false? lst)
我想念的一切?
答案 0 :(得分:3)
您正在寻找程序identity
:
(count identity '(#t #f #t #t #f))
=> 3
(count identity '(1 2 #t #f #f 9))
=> 4