更改列表中的最后一个元素
Change last element in list
我有一个嵌套列表:(def mylist '(+ '(+ 1 2) 3))
当我评估它时,我得到了预期的 6:(eval mylist)
如何更改最后一个元素 (3)?我想要这样的列表:
(+ (+ 1 2) 4)
我试过了
(list (butlast mylist) 4)
但它产生了这个:
((+ (+ 1 2)) 4)
即第一部分嵌套在列表本身中。我该如何解决?我正在递归地构建该列表数据结构,稍后我将通过 eval 函数对其进行评估。
您可以使用以下内容:
(concat (drop-last mylist) '(4))
我有一个嵌套列表:(def mylist '(+ '(+ 1 2) 3))
当我评估它时,我得到了预期的 6:(eval mylist)
如何更改最后一个元素 (3)?我想要这样的列表:
(+ (+ 1 2) 4)
我试过了
(list (butlast mylist) 4)
但它产生了这个:
((+ (+ 1 2)) 4)
即第一部分嵌套在列表本身中。我该如何解决?我正在递归地构建该列表数据结构,稍后我将通过 eval 函数对其进行评估。
您可以使用以下内容:
(concat (drop-last mylist) '(4))