리스트의 두번째, 세번째 또는 다른 요소는 어떻게 가져올까요?
리스트의 꼬리의 머리의 머리를 가져오는 함수는 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)