리스트의 두번째, 세번째 또는 다른 요소는 어떻게 가져올까요?
리스트의 꼬리의 머리의 머리를 가져오는 함수는 caadr
입니다.
그리고 리스트의 꼬리의 꼬리를 가져오는 함수는 cddr
입니다.
이런 함수들의 기본적인 이름 규칙은 쉽습니다.
a
는 리스트의 머리(head)를 의미합니다.
d
는 리스트의 꼬리(tail)을 의미합니다.
(car (cdr (car x) ) )
위의 중첩된 함수는 아래처럼 1개의 함수로 바꿔 쓸 수 있습니다.
(cadar x)
리스트 요소 접근 함수를 연습해봅시다.
아래 스크립트를 작성해서 함수 car
와 cdr
의 변형된 버전을 사용해서 리스트의 다른 요소들에 접근해봅시다.
(let* (
(x '( (1 2 (3 4 5) 5) 7 8 (9 10) )
)
)
;여기에 `car/cdr` 코드를 추가합니다.
)
cadar
함수 사용 (Windows) (우리말)cddr
함수 사용 (Windows) (우리말)Scheme
에서 세미콜론(;
)은 주석(Comment)의 시작을 표시합니다.
스크립트 인터프리터는 세미콜론(;
) 주석의 같은 줄의 모든 내용을 무시합니다.
이를 이용해서 나중에 스크립트를 다시 확인할 때, 작업에 관련된 기억을 되살릴 수 있습니다.
(let* (
(x '( (1 2 (3 4 5) 5) 7 8 (9 10) )
)
)
;여기에 주석을 추가합니다.
)
➡️ 다음: 13.3.4. 첫번째 Script-Fu 스크립트(Your first Script-Fu script)
⬆️ 위: 13.3.3. 더 많은 리스트(Lists, lists and more lists)