1
如果你有一个列表'((a b) (c d) (e f))
,你会如何将它转换为'(a b) '(c d) '(e f)
,以便你可以在它前面放置任何适当的功能,如(append '(a b) '(c d) '(e f))
或语法宏?这可能吗?如何将列表列表转换为列表序列?
谢谢。
如果你有一个列表'((a b) (c d) (e f))
,你会如何将它转换为'(a b) '(c d) '(e f)
,以便你可以在它前面放置任何适当的功能,如(append '(a b) '(c d) '(e f))
或语法宏?这可能吗?如何将列表列表转换为列表序列?
谢谢。
看看apply
,这是一般的做法。
(apply append '((a b) (c d) (e f))) ; '(a b c d e f)
(apply + '(1 2 3)) ; 6
嗯我已经尝试过应用,但它似乎不适用于宏模式,如'myMacro arg1 arg2 arg3'。我尝试过'应用myMacro'((a b)(c d)(e f))''。 – ludluck
我对宏不熟悉。其他人可能会提供更好的答案来处理宏。 – Gibstick
好的。不过谢谢你的尝试。 – ludluck