В Python, предполагая, что следующая функция определена:Common Lisp - Список распаковки? (По аналогии с Python)
def function(a, b, c):
... do stuff with a, b, c ...
Я могу использовать функцию, используя последовательность Питона распаковка:
arguments = (1, 2, 3)
function(*arguments)
делает аналогичные функциональные возможности существуют в Common Lisp ? Так что, если у меня есть функция:
(defun function (a b c)
... do stuff with a, b, c ...
И если у меня есть список из 3-х элементов, я мог бы легко использовать эти 3 элемента в качестве параметров функции?
Как я в настоящее время его реализации заключается в следующем:
(destructuring-bind (a b c) (1 2 3)
(function a b c))
Есть ли лучший способ?
Обратите внимание, что это работает только, когда только аргументов функции содержатся в списке. В противном случае требуется `destructuring-bind` и соответствует способности python выполнять` function (* args, another_arg) `. – Mark 2016-12-09 15:41:26