嗨,我是 AutoCad lisp 的新手,我试图通过一些简单的例程来加快我的工作速度,但我碰壁了,无法弄清楚这一点,而且我有一个强大的填充物,有一个简单的解决方案。所以...
我做了一个名为“koord”的列表:
(setq koord (list (cons "1" "10,10,10")))
结果是点对:("1" . "10,10,10")
之后,我添加到此列表中,例如:
(setq koord (append koord (list (cons "2" "20,20,20"))))
(setq koord (append koord (list (cons "3" "30,30,30"))))
现在结果是:("1" . "10,10,10") ("2" . "20,20,20") ("3" . "30,30,30")
此时我想更新第二个虚线对,让我的列表看起来像这样:
("1" . "10,10,10") ("2" . "60,60,60") ("3" . "30,30,30")
但我不知道如何......如果我这样附加
(setq koord (append koord (list (cons "2" "60,60,60"))))
比我得到这个结果:
("1" . "10,10,10") ("2" . "20,20,20") ("2" . "60,60,60") ("3" . "30,30,30")
如果我知道如何找回这个就不会太糟糕了("2" . "60,60,60")
如果我尝试
(assoc "2" koord)
它会返回第一次出现,即("2" . "20,20,20")
那么,有没有办法不添加而是更新点对中的值或检索最后一个附加的值 - 而不是第一个?