我正在玩lisp的格式化功能,但是我遇到了麻烦,因为虽然我可以把它编写成很好地对齐的数字列表,但我似乎无法将其归零:
(defun inc (a) (+ 1 a))
(dotimes (i 10)
(format t "~3@:D ~:*~R~%" (inc i)))
这会产生以下输出:
+1: one
+2: two
+3: three
+4: four
+5: five
+6: six
+7: seven
+8: eight
+9: nine
+10: ten
有人知道如何让它变为零填充吗?
答案 0 :(得分:9)
取自the PCL chapter on FORMAT的示例:
(format nil "~12d" 1000000) ==> " 1000000"
(format nil "~12,'0d" 1000000) ==> "000001000000"