明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 1340|回复: 8

[经验] 问下list怎么转成变量并执行语句

[复制链接]
发表于 2023-6-5 19:43:46 | 显示全部楼层 |阅读模式
本帖最后由 yaojing38 于 2023-6-5 19:47 编辑
  1. (setq a (STRCAT ZXMM "_" TZZY "_" TZBH "_" TZMC))

a是这样一个语句,其中   ZXMM  TZZY TZBH TZMC 均为变量,当前a 赋值得到 (STRCAT ZXMM "_" TZZY "_" TZBH "_" TZMC) 当前是一个list,我是从外部txt 读取进来的,,怎么让语句运行,,a 得到运行的值呢??还是我得换个方法,,,因为  这里的变量组合是要能更改的,,大神们是怎么操作的呢。。。。求不吝赐教,,,谢谢!
"觉得好,就打赏"
还没有人打赏,支持一下
发表于 2023-6-5 20:11:53 | 显示全部楼层
  1. (defun rrr (Lst / ttt)
  2.   (defun ttt (Str Lst)
  3.     (if        (not Lst)
  4.       Str
  5.       (ttt (strcat Str "_" (car Lst)) (cdr Lst))
  6.     )
  7.   )
  8.   (ttt (car Lst) (cdr Lst))
  9. )

_$ (rrr '("a" "b" "c" "d"))
"a_b_c_d"
是这个意思?
 楼主| 发表于 2023-6-5 21:12:56 | 显示全部楼层
本帖最后由 yaojing38 于 2023-6-5 21:16 编辑
nzl1116 发表于 2023-6-5 20:11
_$ (rrr '("a" "b" "c" "d"))
"a_b_c_d"
是这个意思?

不是哦,,,ZXMM  TZZY TZBH TZMC 这里的这些要转成形参传值用。。。就是我要组合变量,让a不同的组合有不同的值  比如:我程序中 ZXMM  "1" TZZY "2" TZBH  "3" TZMC "4" 数字为各参数的真实值,然后a就成了“1_2_3_4”,当我改变 ZXMM  TZZY TZBH TZMC 顺序,他有时候要成为“1_3_2_4”。
发表于 2023-6-5 23:41:38 | 显示全部楼层
看不懂 你还是发源码上来吧 这么问很难解决问题
发表于 2023-6-5 23:44:21 | 显示全部楼层
yaojing38 发表于 2023-6-5 21:12
不是哦,,,ZXMM  TZZY TZBH TZMC 这里的这些要转成形参传值用。。。就是我要组合变量,让a不同的组合有 ...

set函数可以不??
发表于 2023-6-6 08:05:40 | 显示全部楼层
(setq a(eval'(...)))
发表于 2023-6-6 08:28:36 | 显示全部楼层
(set  (read (nth i a))   "值")
 楼主| 发表于 2023-6-6 09:06:27 | 显示全部楼层
可以了,,6#正解,,7#一个个赋值的好像也可以,方法不一样。。谢谢大佬们!!!
发表于 2023-6-7 10:11:46 | 显示全部楼层
使用 set, read 函数解决你的问题。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-11-16 22:02 , Processed in 0.169643 second(s), 26 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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