如何在 emacs lisp 中迭代嵌套的 alist?

问题描述 投票:0回答:1

我想迭代这个我的列表。 怎么办?

(setq my-list '[((a . 1) (b . 2))  ((c . 3))])
(loop for k in my-list do
  (cl-loop for (i . j) in k do
         (message "%c %d" i j)
)

我尝试过但失败了。错误消息是“符号的值为 void k。”

elisp
1个回答
0
投票

尝试使用

dolist
宏,如下所示:

(setq my-list '(((a . 1) (b . 2)) ((c . 3))))

(dolist (entry my-list)
  (dolist (pair entry)
    (message "Key: %s, Value: %s" (car pair) (cdr pair))))
© www.soinside.com 2019 - 2024. All rights reserved.