gpt4 book ai didi

方案 - 空列表上的汽车/CDR

转载 作者:行者123 更新时间:2023-12-03 03:35:43 25 4
gpt4 key购买 nike

我编写了一个使用 car 和 cdr 的大程序,并且执行以下操作:

(map car (append (map caddr lists) (map cadr lists))

lists 是下一个格式的列表列表时 ((a (b) (c)) (d (e) (f))...(x (y) (z)))当我这样做时,我得到了一个列表(b c e f... y z)(注:b,c,...y,z 是数字列表;a,d...x 是符号)

但是现在,我发现 b,c,...,y,z 也可以是空列表,并且它给出了下一个错误:

car: expects argument of type <pair>; given ()

我能做什么?

最佳答案

您是否尝试过在 map 之前过滤掉空列表?像这样的事情:

(map car (filter pair? (append (map caddr lists) (map cadr lists))))

根本问题是 () 不是一对,而 car 仅作用于对。最简单的解决方案是在将 car 映射到列表之前删除所有不成对的内容;这就是(过滤器对?...) 的作用。

关于方案 - 空列表上的汽车/CDR,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8334773/

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