本帖最后由 cabinsummer 于 2011-10-12 18:16 编辑
已存在的表为alist,flist为最终输出表,tlist为临时表
 - (defun devidelist(alist / flist tlist)
- (setq tlist nil flist nil n 0)
- (repeat (length alist)
- (setq tlist (append tlist (list (nth n alist))))
- (setq n (1+ n))
- (if (= (rem n 2000) 0);余数为0,则将临时表追加到输出表后面,并将临时表重新置空
- (progn
- (setq flist (append flist (list tlist)))
- (setq tlist nil)
- )
- )
- )
- (if tlist (setq flist (append flist (list tlist))));处理最后一组不够2000个的表
- flist
- )
|