循環一個alist並在Emacs Lisp中爲每一對執行操作的最佳方式是什麼?我想一個宏並不難,我只是想知道這是否構建在某個地方。有沒有比下面更優雅的方式?Elisp - 在alist上循環
(setq my-list '((a . 1)
(b . 2)
(c . 3)))
(loop for key in (mapcar 'car my-list)
for value in (mapcar 'cdr my-list)
collect (cons value key))
;; Returns this
((1 . a)
(2 . b)
(3 . c))
我更喜歡這個答案,因爲它不使用`cl`。 – kindahero 2011-12-15 02:33:33
@kindahero你意識到循環是一個CL宏嗎?這很好。 – 2011-12-15 04:23:34