시퀀스를 반복하면서 각 요소에 대해 조건부로 연산을 수행 한 다음 수집합니다 (조건과 일치하는 경우에만). 여기에 작동하는 간단한 예 난 그냥이 적절한 또는 혀짤배기에 가장 좋은 방법은 있는지 알고 싶어한다 :조건부 무언가 수집 모범 사례?
(loop for n in '(1 2 3 4 5)
when (when (equal (mod n 2) 0) n)
collect it)
이 작동
(2 4)
산출, 그냥 나에게 재미보고 그리 대부분의 경우지만, 내가 원하는 것을 돌려주는 조건을 조정할 필요가 있다고 느끼기 때문에. 나는 그에게 anaphoric을 얻는다 는 언제 평가 받는다. 그러나 이것은 단지 나에게 약간 인공의 것처럼 보인다. 내가 놓친 게 있니? 나는 겨우 몇 주 동안의 속임수였습니다.
편집 : 실제로 이것을 적용하려고하면 다소 혼란 스럽습니다.
(loop for n in '(1 2 3 4 5)
when (when (equal (mod n 2) 0) n)
collect it
do (format t "~A" it))
하지만 언 바운드 될 것으로 보인다 두 번째 ...이 어떻게해야합니까
: 내가 정말하고 싶은 것은 이것이다?
숫자를 비교하려면 = 또는 EQL을 사용할 수 있습니다. –