这个问题可能会以捂脸结束,但我已经尝试了一段时间,尽管阅读了超规范,但仍然卡住了。
基本上我想做的是
(format t "~{|~{ ~5d~}|~%~}" '((1 23 2 312) (23 456 1 7890)))
但不应该对 5 进行硬编码,而是应该从列表中计算(任何嵌套列表中最长元素的长度 + 1),给出类似的结果
| 1 23 2 312|
| 23 456 1 7890|
也许我在这里想得太复杂了,有一种更简单的方法可以做我想做的事,但我想我让自己陷入了一个无法摆脱的心理困境。
我认为你有两个选择:让format
magic go 并使用其他循环结构或生成格式字符串本身:
(defun facepalm-printer (lol)
(format t (format nil "~~{|~~{ ~~~ad~~}|~~%~~}"
(longest-member lol))
lol))
的定义longest-member
留给读者作为练习。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)