Clojure 更改列表中的最后一个元素

Clojure 更改列表中的最后一个元素,clojure,Clojure,我有一个嵌套列表:(def mylist'(+'(+12)3)) 当我评估它时,我得到了预期的6分:(eval mylist) 如何更改最后一个元素(3)?我想得到这样一份清单: (+ (+ 1 2) 4) 我试过了 (list (butlast mylist) 4) 但它会产生这样的结果: ((+ (+ 1 2)) 4) i、 e.第一部分嵌套在列表中。我怎样才能修好它?我正在递归地构建列表数据结构,稍后我将通过eval函数对其进行评估。您可以使用以下方法: (concat (drop-

我有一个嵌套列表:(def mylist'(+'(+12)3))

当我评估它时,我得到了预期的6分:(eval mylist)

如何更改最后一个元素(3)?我想得到这样一份清单:

(+ (+ 1 2) 4)
我试过了

(list (butlast mylist) 4)
但它会产生这样的结果:

((+ (+ 1 2)) 4)

i、 e.第一部分嵌套在列表中。我怎样才能修好它?我正在递归地构建列表数据结构,稍后我将通过eval函数对其进行评估。

您可以使用以下方法:

(concat (drop-last mylist) '(4))

您可以使用以下选项:

(concat (drop-last mylist) '(4))

您可以使用以下选项:

(concat (drop-last mylist) '(4))

您可以使用以下选项:

(concat (drop-last mylist) '(4))