如果我的变量是list和cons单元格的组合,如何在lisp中使用nth函数
例如:(setq aa '(1 2) )
(nconc aa (+ 1 2))
这个返回我(1 2 . 3)
当我说(nth 1 aa)
时,它返回2
但当我使用(nth 2 aa )
时,它会抛出错误
最佳答案
n返回n(0,1,2…)cons小区的车。
因为你的第二个cdr不是一个cons单元,所以把车开走是个错误。
(nthcdr 2 '(1 2 . 3)) returns 3
(last '(1 2 . 3)) returns (2 . 3)
通常,避免使用不正确的列表是一个好主意,因为某些单元的cdr不是cons或nil。
关于lisp - lisp nth函数在cons-cell上不起作用,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/2199272/