lht 发表于 2006-4-13 22:05:00

如何取出群码为10的子列表

<P>一个信息列表(entget ss)里有若干个群码为10的子列表,我知道先用(length (entget ss))取得子列表数,再根据子列表数确定循环次数来求得群码为10的子列表,但是我只想取出第一个群码为10的子列表就终止循环,这样可节省不少时间。请问满足我要求的函数怎么写?</P>

liu_kunlun 发表于 2006-4-14 07:46:00

<P>下面可返回表lst从第一个10组码开始的剩余部分</P>
<P>(setq lst1 (member (assoc 10 lst) lst))</P>

ljpnb 发表于 2006-4-14 08:13:00

(SETQ LOOP T)<BR>(while loop<BR>&nbsp; .....<BR>&nbsp; (if (= (car (assoc 10 dxf)) 10)<BR>&nbsp;&nbsp;&nbsp; (progn<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (setq loop nil)<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ......<BR>&nbsp;&nbsp;&nbsp; )<BR>&nbsp; )<BR>&nbsp; )

lht 发表于 2006-4-14 08:19:00

谢谢楼上二位大侠提供的解决方案
页: [1]
查看完整版本: 如何取出群码为10的子列表