assoc函数第一个参数可否用变量实现????
可以
我做了实验,如下:(setq el (entget (car (entsel))))
Select object: ((-1 . <Entity name: 40036d90>) (0 . "LINE") (330 . <Entity
name: 40036cf8>) (5 . "52") (100 . "AcDbEntity") (67 . 0) (410 . "Model") (8 .
"0") (100 . "AcDbLine") (10 5.14077 5.61304 0.0) (11 17.7827 10.2074 0.0) (210
0.0 0.0 1.0))
Command: (setq a 10)
10
Command: (setq p1 (cdr (assoc a el)))
(5.14077 5.61304 0.0)
如果是字符串呢?
如果是字符串呢?字符串??沒有問題!!
指令: (setq ss (list (cons 123 "sdaf")(cons "qwe" "123")))((123 . "sdaf") ("qwe" . "123"))
指令: (assoc "qwe" ss)
("qwe" . "123")
我说的是用字符串变量操作
不明白了,真的????????????????????
就是关联表的关键元素为字符串...
如:(setq ss '(("a1" 10 20) ("a2" 20 21) ("a3" 45 27)))
(setq r "a1")
我想这样使用
***(setq rs (assoc r ss))***
哎,用你给出的例子在CAD中试一下不就行了。我是出的结果为rs=("a1" 10 20),说明
哎,用你给出的例子在CAD中试一下不就行了。我是出的结果为rs=("a1" 10 20),说明可以。 今天碰到相同的问题,可以解决的 (setq r ‘()) (setq r (cons "a1") r) (assoc (car r) ss)
页:
[1]