gpt4 book ai didi

debugging - 如何将代码转换为字符串或在方案中使用适当的空格打印它?

转载 作者:太空宇宙 更新时间:2023-11-03 18:41:11 25 4
gpt4 key购买 nike

有没有办法将代码转换为具有适当空格甚至 pretty-print 的方案中的字符串?

所以当我将它应用到像 (+ 1 2) 这样的形式时,它应该产生“(+ 1 2)”而不是“+12”。

最佳答案

尝试引用表达式,这应该足以显示它,并且它会更容易操作(比操作字符串更容易):

(display '(+ 1 2))
=> '(+ 1 2) ; a quoted expression

或者如果你确实需要一个字符串,在 Racket 中你可以做这样的事情 - 但同样,必须首先引用表达式:

(format "~a" '(+ 1 2))
=> "(+ 1 2)" ; a string

另一种方式,使用字符串输出端口:

(define o (open-output-string))
(write '(+ 1 2) o)
(get-output-string o)
(close-output-port o)
=> "(+ 1 2)" ; a string

最后,一个使用 Racket 的 pretty printing 的例子图书馆:

(require racket/pretty)
(define o (open-output-string))
(pretty-write '(+ 1 2) o)
(get-output-string o)
(close-output-port o)
=> "(+ 1 2)\n" ; a formatted string

关于debugging - 如何将代码转换为字符串或在方案中使用适当的空格打印它?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16995342/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com