【发布时间】:2021-01-25 08:06:08
【问题描述】:
所以我有列表,看起来像这样:
((24 . 23) (9 . 6) ... )
并希望将输出格式自定义为如下所示:
"24/23 9/6 ..."
我试过了:
(defun show-pair (ostream pair col-used atsign-used)
(declare (ignore col-used atsign-used))
(format ostream "~d/~d" (first pair) (second pair)))
(let ((x '( 1 . 2))) (format nil "~{~/show-pair/~^~}" (list x)))
作为一个简单的热身练习,显示只有一对的列表。但是在emacs slime repl中尝试这个时,我得到了错误
价值 2 不是类型 列表 [TYPE-ERROR 类型的条件]
这当然令人困惑,因为预计~/show-pair/ 会处理列表中的一个条目,即配对,将配对传递给show-pair。但看起来,实际上正在发生其他事情。
【问题讨论】:
标签: common-lisp