gpt4 book ai didi

variables - 在 LISP 中扩展列表中的变量

转载 作者:太空宇宙 更新时间:2023-11-03 18:53:08 24 4
gpt4 key购买 nike

我希望下面的代码能够工作。如何使一级变量展开?

(let* ((data1 10)
(data2 '(data1 20)))
(progn data2))

我期望 (10 20) 但实际上我得到了 (data1 20)。我还想从以下获取 (10 20 (data2)):

 (let* ((data1 10)
(data2 30)
(data3 '(data 10 20 '(data2)))
(progn data3))

最佳答案

变量没有扩展的原因是您使用' 引用了整个列表。 ' 不是您在 lisp 中创建列表的方式,而是您引用它们的方式(即导致它们不被评估)。

要创建一个包含 data1 和数字 20 的列表,只需使用 (list data1 20)

关于variables - 在 LISP 中扩展列表中的变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8368351/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com