2013-08-01 2 views
4

시퀀스 또는 벡터를 가져 와서 반복적 인 무한 루프 버전을 만들고 싶습니다. 이것은 내가 뭘하려 :클로저에 무한 반복 시퀀스를 만들려면 어떻게해야합니까?

(def test-seq '(1 2 3)) 
(take 5 (repeat test-seq)) 

내가

내가 원하는 것은
(1 2 3 1 2) 

내가이

(take 5 (flatten (repeat test-seq))) 

작동 알고 있었다

((1 2 3) (1 2 3) (1 2 3) (1 2 3) (1 2 3)) 

을 가지고 있지만이 보인다 조금 불만족스럽고 연약한. 나는 시퀀스의 순서가 비싼 재 구조화를 믿고있어하지만 난 잘 잘못 :) 수 있습니다

답변

9

당신은 cycle 찾고 :

(take 5 (cycle '(1 2 3))) ;; => (1 2 3 1 2) 
관련 문제