如何以循环方式执行不以嵌套方式执行的操作?

时间:2013-03-28 16:08:09

标签: clojure

我想要像

这样的东西
(for [x [1 2 3]
      y [4 5 6]]
      (+ x y))
=>(5 7 9)

而不是

=>(5 6 7 6 7 8 7 8 9)

我想我可以通过解构而不确定如何做到这一点。 我试过了

(for [[x y] [[1 2 3] [4 5 6]] (+ x y))

给出(3 9)。

有什么建议吗?

1 个答案:

答案 0 :(得分:6)

for宏不是解决此问题的最佳选择。尝试使用map

(map + [1 2 3] [4 5 6])