我需要从包含内部列表的列表中删除一个元素。预定义的元素也应该从每个内部列表中删除。
我已经开始使用以下代码:
(SETQ L2 '(a b ( a 2 b) c 1 2 (D b (a s 4 2) c 1 2 a) a )) ; defined my list
; Created a function for element removing
(defun elimina (x l &optional l0)
(cond (( null l)(reverse l0))
((eq x (car l))(elimina x (cdr l) l0))
(T (elimina x (cdr l) (cons (car l) l0))))
)
(ELIMINA 'a L2)
但不幸的是,它只删除了嵌套列表之外的元素。
我试图创建一个附加函数,它将从内部列表中删除元素。
(defun elimina-all (x l)
(cond ((LISTP (CAR L))(reverse l)(elimina x (car l)))
(T (elimina-all x (CDR L)))
)
)
但仍然没有成功。
你能帮我解决吗?
先感谢您。