关于list
有一个list : ( ( 1 a ) ( 2 b ) ( 3 c) ( 4 d ) (5 e )) ,如何将它变为( (1 e) ( 2 d) (3 c ) ( 4 b) (5 a)) 就是把他的每一项的第二项reverse一下,如何实现,
我的程序里的list 有360项,大家说一个方法,不止限于5项 (setq LST '((1 A) (2 B) (3 C) (4 D) (5 E)))<BR>(setq LST (reverse LST))<BR>(setq LEN (1+ (length LST)))<BR>(mapcar '(lambda (X)<BR> (list (- LEN (car X)) (cadr X))<BR> )<BR> LST<BR>)<BR> (defun rev(alist / blist)<BR> (setq blist (reverse alist))<BR> (mapcar<BR> '(lambda(x y)<BR> (list (car x) (cadr y))<BR> )<BR> alist<BR> blist<BR> )<BR>) 再简一下...
(defun rev(alist / )<BR> (mapcar<BR> '(lambda(x y)<BR> (list (car x) (cadr y))<BR> )<BR> alist<BR> (reverse alist))<BR>) (mapcar 'list (mapcar 'car lst)(mapcar 'cadr (reverse lst)))
页:
[1]