将List中的第N个元素作为列表而不是LISP中的数字?

时间:2017-05-10 13:45:01

标签: list lisp

我们说你有

(setq list '(1 2 3 4 5))

当使用Nth返回第一个元素时,结果是一个数字:

(nth 0 list)
Result: 1

有没有办法将结果作为List返回或将结果转换为列表?如:

Result: (1)

1 个答案:

答案 0 :(得分:3)

可以使用list函数将任何对象转换为list

(defparameter *list* '(1 2 3 4 5))
(list (nth 0 *list*))
==> (1)

但是,如果你想获得包含数字的参数的 slice ,你需要意识到没有修改参数{{ 1}}:

*list*

以下截断 (defparameter *tail* (nthcdr 2 *list*)) *tail* ==> (3 4 5) *tail*

*list*