Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
您将如何设计一个函数find,该函数将接收符号列表和数字,并返回列表的第 n 个符号
find
我猜输出会是这个
(find (list 'a 'b 'c 'd) 3)
会
(find (list 'a 'b 'c 'd 'e 'f) 4)
'e
有没有一种简单的方法可以做到这一点,不会让我感到困惑并且使用初学者很容易理解?
该函数已经存在并且是标准的,它被称为list-ref:
list-ref
(list-ref (list 'a 'b 'c 'd 'e 'f) 4) => 'e
从文档中:
list-ref返回位置 pos 的 lst 元素,其中列表的第一个元素是位置 0。如果列表具有 pos 或更少的元素,则引发 exn:fail:contract 异常。