按位置获取列表元素

Get list element by position

我要给一个数字和return这个位置的元素。 列出 lab = (R K K K K) 我想知道 lisp 上是否存在类似 (position 1 lab) 的东西。就像在 C return lab[1].

中一样

在 Common Lisp 中,获取列表第 n 个元素的运算符称为 nth(参见 manual):

(nth 2 '(a b c d))  ; returns C

一个相关的运算符是 nthcdr,即 returns 列表的其余部分从第 n 个元素开始:

(nthcdr 2 '(a b c d)) ; returns (C D)

对于适用于向量 适当列表的运算符,请参阅 elt

(let ((list (list 'a 'b 'c 'd)))
       (prog1 list
         (setf (elt list 1) 1)))
=> (A 1 C D)