2.4 列表操作 (List Operations)
用函数 cons
来构造列表。如果传入的第二个实参是列表,则返回由两个实参所构成的新列表,新列表为第一个实参加上第二个实参:
> (cons 'a '(b c d))
(A B C D)
可以通过把新元素建立在空表之上,来构造一个新列表。上一节所看到的函数 list
,不过就是一个把几个元素加到 nil
上的快捷方式:
> (cons 'a (cons 'b nil))
(A B)
> (list 'a 'b)
(A B)
取出列表元素的基本函数是 car
和 cdr
。对列表取 car
返回第一个元素,而对列表取 cdr
返回第一个元素之后的所有元素:
> (car '(a b c))
A
> (cdr '(a b c))
(B C)
你可以把 car
与 cdr
混合使用来取得列表中的任何元素。如果我们想要取得第三个元素,我们可以:
> (car (cdr (cdr '(a b c d))))
C
不过,你可以用更简单的 third
来做到同样的事情:
> (third '(a b c d))
C
当前内容版权归 readthedocs 或其关联方所有,如需对内容或内容相关联开源项目进行关注与资助,请访问 readthedocs .