乐筑天下

搜索
欢迎各位开发者和用户入驻本平台 尊重版权,从我做起,拒绝盗版,拒绝倒卖 签到、发布资源、邀请好友注册,可以获得银币 请注意保管好自己的密码,避免账户资金被盗
查看: 20|回复: 3

[编程交流] 循环浏览列表?

[复制链接]

8

主题

27

帖子

19

银币

初来乍到

Rank: 1

铜币
40
发表于 2022-7-6 06:33:02 | 显示全部楼层 |阅读模式
我有一个我正在构建的代码初稿,用作层检查器,但我还需要使用列表中的第一项循环一次,然后使用列表中的第二项循环第二次,然后是第三项、第四项等等。。。。。但我似乎想不出一个办法来做到这一点。我也很确定我使用的“repeat”函数是不正确的,因为在我添加了它之后,代码停止了工作,但我没有试着用它来让它再次工作。
 
  1. (defun c:mscheck (/ sys ss count msg)
  2. (setq sys (list "H-LOWP"))
  3. (setq sys (append sys '("H-LOWP-EXST" "H-MEDP" "H-MEDP-EXST" "H-EXHS" "H-EXHS-EXST" "H-GRDS" "H-GRDS-EXST" "H-RTRN" "H-RTRN-EXST" "G-GENL-TEXT" "G-GENL-TEXT-EXST" "G-EQPM" "G-EQPM-EXST" "H-STAT" "H-STAT-EXST" "H-OAIR" "H-OAIR-EXST")))
  4. (setq count (length sys))
  5. (repeat count  
  6. (if (tblsearch "layer" sys)foreach
  7.    (progn
  8.      (setq ss (ssget "_X" (list (cons 8 sys))))
  9.      (if (= ss nil)
  10. (progn
  11.   (setq count "0")
  12.   );progn
  13. (progn
  14.   (setq count (sslength (ssget "_P")))
  15.   );progn
  16. );if
  17.      );progn
  18.    (progn
  19.      (setq count "DNE")
  20.      );progn
  21.    );if
  22. (setq msg (cons sys count))
  23. (print msg)
  24. (princ)
  25.    );repeat
  26. );defun
回复

使用道具 举报

44

主题

3166

帖子

2803

银币

中流砥柱

Rank: 25

铜币
557
发表于 2022-7-6 07:00:37 | 显示全部楼层
  1. (defun c:FOO (/ ss)
  2. (foreach layerName '("H-LOWP" "H-LOWP-EXST" "H-MEDP" "H-MEDP-EXST"
  3.                       "H-EXHS" "H-EXHS-EXST" "H-GRDS" "H-GRDS-EXST"
  4.                       "H-RTRN" "H-RTRN-EXST" "G-GENL-TEXT"
  5.                       "G-GENL-TEXT-EXST" "G-EQPM" "G-EQPM-EXST"
  6.                       "H-STAT" "H-STAT-EXST" "H-OAIR" "H-OAIR-EXST"
  7.                      )
  8.    (prompt
  9.      (strcat "\n["
  10.              layerName
  11.              "] : "
  12.              (if (setq ss (ssget "_x" (list (cons 8 layerName))))
  13.                (itoa (sslength ss))
  14.                "0"
  15.              )
  16.      )
  17.    )
  18. )
  19. (textpage)
  20. (princ)
  21. )
回复

使用道具 举报

8

主题

27

帖子

19

银币

初来乍到

Rank: 1

铜币
40
发表于 2022-7-6 07:31:48 | 显示全部楼层
美好的它工作得很好。我必须稍微剖析一下你的代码,看看你做了什么,以防我以后需要再写类似的东西。
 
谢谢
回复

使用道具 举报

44

主题

3166

帖子

2803

银币

中流砥柱

Rank: 25

铜币
557
发表于 2022-7-6 07:35:05 | 显示全部楼层
 
不客气;我很乐意帮忙。
 
本质上,对于层名称列表中的每个层名称,向用户提示层名称,如果该层上有实体,包括多少,否则为零。
回复

使用道具 举报

发表回复

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

QQ|关于我们|小黑屋|乐筑天下 繁体中文

GMT+8, 2025-3-10 15:18 , Processed in 0.437435 second(s), 60 queries .

© 2020-2025 乐筑天下

联系客服 关注微信 帮助中心 下载APP 返回顶部 返回列表