Autolisp 列表相同元素合并

(defun $处理列表类型$(aa)
(defun test (lst / a lst2)
  (while (setq a    (car lst)
           lst2 (cons a lst2)
           lst  (vl-remove a lst)
     )
  )
  (reverse lst2)
)
(setq aa2 (test aa))
(mapcar (function (lambda (a)(append (vl-remove nil (mapcar (function (lambda (b)(if (= a b ) a)))aa)))))aa2)
  )

;;;(setq aa (list 12 12 12 12 12 23 23 34 34))
;;;($处理列表类型$  aa)
;;;=>((12 12 12 12 12) (23 23) (34 34))

新手上路不喜勿喷!! 

你可能感兴趣的:(Autolisp 列表相同元素合并)