gpt4 book ai didi

lisp - 使用 Common Lisp 将文件读取到列表列表

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

我需要使用 Common Lisp 读取文本文件。文件必须读取到列表列表。列表中的每个列表都必须包含文件中的一行。

现在,我已经完成了这样的代码:

(with-open-file (in file)
(loop for line = (read-line in nil nil)
while line
collect (coerce line 'list)))

但是,例如,结果看起来是:((#\0 #\0 #\0) (#\1 #\0 #\1))。但我需要得到没有#\字符的结果:((0 0 0) (1 0 1))。如何解决?

最佳答案

您已经将行转换为字符列表;您需要做的就是将字符转换为数字:

(with-open-file (in file)
(loop for line = (read-line in nil nil)
while line
collect (map 'list #'digit-char-p line)))

您也可以使用 (parse-integer (string c)) 代替 digit-char-p ,但这似乎有些矫枉过正。

关于lisp - 使用 Common Lisp 将文件读取到列表列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26719718/

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