明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
楼主: hhh454

[函数] foreach的故事

  [复制链接]
发表于 2020-9-11 14:09 | 显示全部楼层
本帖最后由 sunny_8848 于 2020-9-11 14:10 编辑

感谢楼主分享,收藏学习。
发表于 2020-9-11 14:47 | 显示全部楼层
太难了,可以从入门开始讲吗》?
发表于 2020-9-12 21:41 | 显示全部楼层
感谢楼主分享,学习了!!!!!!
 楼主| 发表于 2020-9-12 23:39 | 显示全部楼层
luohonghe 发表于 2020-9-11 14:47
太难了,可以从入门开始讲吗》?

刚刚开始写可以考虑用command来写代码,这样比较直观
发表于 2020-9-17 15:57 | 显示全部楼层
很好用 好多年没写LISP代码了
发表于 2020-9-30 14:41 | 显示全部楼层
又学习了一个函数,谢谢大佬分享!
发表于 2020-9-30 14:46 | 显示全部楼层
谢谢老师指教学习方法
发表于 2020-11-12 21:08 | 显示全部楼层
呃呃呃,我也这么慢慢来的
先简单的来,可以拿别人的小改
逐渐实现自己功能
哪怕代码难看,实现功能就好

发表于 2021-11-15 17:07 | 显示全部楼层
又学到了留个位子
以便后面用到学习
发表于 2021-11-15 22:14 | 显示全部楼层
本帖最后由 wzg356 于 2021-11-15 22:31 编辑

再深一点,欢迎补充

如果只是主贴用法,mapcar也可以,mapcar难理解一点

mapcar foreach执行过程一样

区别
mapcar每次执行功能只能以一个函数表达式书写
foreach每次执行功能可多个表达式顺序书写

mapcar返回以表形式展示每一步的结果
foreach只能返回最后一次的结果

例如
(setq y 5)
(foreach x (list 1 2 3 )(setq y(+ y x)))
-----------------------------------------
(setq y 5)
(mapcar '(lambda(x)(setq y(+ y x)))(list 1 2 3 ))

二者最终可以得到一样的y
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-5-2 06:53 , Processed in 1.150538 second(s), 19 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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