求助:关于表分组问题
((1 6.01704 6.01) (2 9.26518 9.26) (3 8.48412 8.42) (4 13.1391 13.12).....)这样格式的表,能否给个思路,每30个加分成一组,最后剩下的一组!
;;;是别人写的,我是盗版
(defun xl-div (lst x / lst2)
(foreach n lst
(if (and lst2 (/= x (length (car lst2))))
(setq lst2 (cons (append (car lst2) (list n)) (cdr lst2)))
(setq lst2 (cons (list n) lst2))
)
)
(reverse lst2)
)
(defun c:tt ()
(setq lst '((1)( 2)( 3)( 4)( 5) (6) (7)( 8) (9)))
(xl-div lst 8)
);;返回(((1) (2) (3) (4) (5) (6) (7) (8)) ((9))) 太感谢了~完美解决了问题 留名学习啦 本帖最后由 llsheng_73 于 2015-4-12 14:42 编辑
(defun divlst(lst n / a b)
(while lst(setq b nil)
(repeat(min(length lst)n)(setq b(cons(car lst) b)lst(cdr lst)))
(setq a(cons b a)))
(mapcar'reverse(reverse a)))
页:
[1]