Function BUTLAST, NBUTLAST

UP


Function BUTLAST, NBUTLAST

Function BUTLAST, NBUTLAST

構文

butlast list &optional n => result-list
nbutlast list &optional n => result-list

引数と戻り値

list - リスト。ドットリストは受け付けますが、循環リストは受け付けません。
n - 非負の整数
result-list - リスト

定義

butlastは、最後のn個のコンスを無視したlistのコピーを返却します。 nが省略されたときの値は1です。 もしlist内にn個もコンスがなかったときは、 nilが返却され、 nbutlastのときはlistは修正されません。

nbutlastは、butlastと似てますが、 nbutlastlistを修正するかもしれません。 それは、listの終わりからn+1個のコンスの cdrnilに修正します。

例文

(setq lst '(1 2 3 4 5 6 7 8 9)) =>  (1 2 3 4 5 6 7 8 9)
(butlast lst) =>  (1 2 3 4 5 6 7 8)
(butlast lst 5) =>  (1 2 3 4)
(butlast lst (+ 5 5)) =>  NIL
lst =>  (1 2 3 4 5 6 7 8 9)
(nbutlast lst 3) =>  (1 2 3 4 5 6)
lst =>  (1 2 3 4 5 6)
(nbutlast lst 99) =>  NIL
lst =>  (1 2 3 4 5 6)
(butlast '(a b c d)) =>  (A B C)
(butlast '((a b) (c d))) =>  ((A B))
(butlast '(a)) =>  NIL
(butlast nil) =>  NIL
(setq foo (list 'a 'b 'c 'd)) =>  (A B C D)
(nbutlast foo) =>  (A B C)
foo =>  (A B C)
(nbutlast (list 'a)) =>  NIL
(nbutlast '()) =>  NIL

影響

なし。

例外

listが通常のリストではないか、 ドットリストではないとき、 型type-errorのエラーが生じます。 nが非負の整数ではないとき、 型type-errorのエラーが生じます。

参考

なし。

備考

(butlast list n) == (ldiff list (last list n))

TOP, Github