gpt4 book ai didi

lisp - 要列出的字符串没有 #\in common lisp

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

我想将 String 转换为列表。例如,http => (h t t p)。

我尝试:

(defun string-to-list (s)
(assert (stringp s) (s) "~s :questa non e una stringa")
(coerce s 'list))

但如果我这样做

(string-to-list "http")

结果:

(#\h #\t #\t #\p).

我可以删除#\吗? 提前致谢:)

最佳答案

你为什么要这么做?您要求的是将字符串(一维字符数组)拆分为符号列表。你真的想要那个吗?

#\h是打印出来的字符对象。

你可以用不同的方式打印它们:

CL-USER 8 > (princ #\h)
h

CL-USER 9 > (prin1 #\h)
#\h

让我们使用 PRINC 打印列表:

CL-USER 10 > (map nil #'princ (coerce "Hello!" 'list))
Hello!

顺便说一句,由于字符串、向量和列表都是序列,您可以直接在字符串上映射...

CL-USER 11 > (map nil #'princ "Hello!")
Hello!

关于lisp - 要列出的字符串没有 #\in common lisp,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9066750/

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