找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 1423|回复: 2

[每日一码] 关联表转换为真列表

[复制链接]

已领礼包: 3个

财富等级: 恭喜发财

发表于 2021-3-13 22:01:30 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

×
本帖最后由 晨曦CAD 于 2021-3-13 22:42 编辑

复制代码
  1. [hide=d999];;关联列表提取真列表
  2. ;@晨曦 2021.3
  3. ;输入参数:conlst 关联列表如(1 2 3 . 4)
  4. ;输出参数:LIST(真列表 关联列表尾元素)
  5. ;实例:(1 2 3 . 4)-> ((1 2 3) 4)
  6. (defun con2list(conlst / lst)
  7. (setq lst(list))
  8. (while (= (type conlst) (quote list))
  9. (setq lst(append lst (list (car conlst))))
  10. (setq conlst(cdr conlst))
  11. )
  12. (setq lst(append (list lst) (list conlst)))
  13. )[/hide]



实例:(con2list (1 2 3 . 4)) -> ((1 2 3) 4)

(con2list (1 2 3 4)) -> ((1 2 3 4) nil)

论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
发表于 2021-3-15 09:47:20 | 显示全部楼层
本帖最后由 Longfin 于 2021-3-15 12:38 编辑

(defun con2list (LST)
  (if LST
    (if (vl-consp LST)
      (cons (car LST) (con2list (cdr LST)))
      (cons LST nil)
    )
  )
)

论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 146个

财富等级: 日进斗金

发表于 2021-4-9 07:51:21 | 显示全部楼层
很好用的函數 感謝樓主的分享
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

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

本版积分规则

QQ|申请友链|Archiver|手机版|小黑屋|辽公网安备|晓东CAD家园 ( 辽ICP备15016793号 )

GMT+8, 2024-9-27 06:53 , Processed in 0.184815 second(s), 33 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表