如果我有这样的清单
(1 2 3) 我想找到2的索引,我使用了函数
(position '3 '(1 2 3))
编译此错误时
。 。职位:未定义; 不能引用未定义的标识符
答案 0 :(得分:2)
如果我理解正确,您只想在列表中找到元素的索引。我没有为此找到内置程序,但您可以自己轻松完成此任务:
(define (position elt lst)
(let loop ((lst lst) (i 0))
(cond
((null? lst) #f)
((eq? elt (car lst)) i)
(else (loop (cdr lst) (+ 1 i))))))
然后
(display (position '3 '(1 2 3)))
=> 2