将列表作为 elisp 函数的参数
Put list as arguments to elisp function
好的,假设我们在 elisp 中有一个类似于 format
的函数:
(format "%s, %s" "Hello" "World!") ;; returns "Hello, World!"
如果我将参数作为列表,我怎样才能得到相同的结果?换句话说如何修复下一个表单?
(equal "Hello, World!" (format "%s, %s" (list "Hello" "World")))
使用apply
:
(apply 'format "%s, %s" (list "Hello" "World"))
apply
接受函数名(带引号),然后是任意数量的 "normal" 参数,最后一个参数应该是一个列表,它附加在 "normal" 参数之后。
好的,假设我们在 elisp 中有一个类似于 format
的函数:
(format "%s, %s" "Hello" "World!") ;; returns "Hello, World!"
如果我将参数作为列表,我怎样才能得到相同的结果?换句话说如何修复下一个表单?
(equal "Hello, World!" (format "%s, %s" (list "Hello" "World")))
使用apply
:
(apply 'format "%s, %s" (list "Hello" "World"))
apply
接受函数名(带引号),然后是任意数量的 "normal" 参数,最后一个参数应该是一个列表,它附加在 "normal" 参数之后。