明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 919|回复: 8

[提问] car和cadr提取的为数值,cddr提取的却成了list型,求解答

[复制链接]
发表于 2023-3-20 22:37:53 | 显示全部楼层 |阅读模式
  • zuobiao 值为 (266886.0,131267.0,2.5)
  • (setq qx1 (-(car zuobiao)(/ JCCCD 2)));qx1   为real型
  • (setq qy1 (-(cadr zuobiao)(/ JCCKD 2)));qy1   为real型



问题:
  • (setq qh1 (cddr zuobiao))  ;qh1   结果为什么是list型?
求大神解惑

本帖子中包含更多资源

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

x
发表于 2023-3-20 22:57:04 | 显示全部楼层
谷歌查一下咯


本帖子中包含更多资源

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

x
发表于 2023-3-20 23:00:32 | 显示全部楼层
试试(caddr a) 或 (nth 2 a)
发表于 2023-3-20 23:05:32 | 显示全部楼层
本帖最后由 whg587081 于 2023-3-20 23:07 编辑

试试(car(cdr(cdr a)))
发表于 2023-3-22 14:56:12 | 显示全部楼层
CDDR是去掉前两个元素后的表,虽然只有一个元素,它还是个表
发表于 2023-3-22 14:57:37 | 显示全部楼层
用 (setq qh1 (caddr zuobiao))
发表于 2023-3-22 15:17:48 | 显示全部楼层
本帖最后由 wzg356 于 2023-3-22 15:22 编辑

CDR返回list移除第一个元素后剩下的部分,如果是点对(cons a b),则返回b
car返回list第一个元素

CDR与car组合
(car ls)==(nth 0 ls)
(cadr ls)==(car(cdr ls))==(nth 1 ls)
(cddr ls)==(cdr(cdr ls))
(caddr ls)==(car(cdr(cdr ls)))==(nth 2 ls)
以此类推,a/ d共可以嵌套4个
 楼主| 发表于 2023-3-22 22:18:12 | 显示全部楼层
谢谢各位,我换了个思路,直接提取XDATE中的值来用了
发表于 2023-3-29 11:52:28 | 显示全部楼层
car,cdr是最基本的两个,其它的都是组合,,通过A,D任意组合,只要a或d不超过4个就行
只要是ca...r返回的都是单一元素,cd...r都是返回表
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2024-11-16 12:52 , Processed in 0.181208 second(s), 25 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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