我想要一对,其第二个元素可以是符号或列表。例如,'(x . y)
并且'(x . (a b c d))
在我的上下文中都是有效的对。如果第二个元素只是一个符号,我可以得到一对cons
,但如果它是一个列表呢?
问问题
109 次
2 回答
1
然后你仍然使用cons
方案打印机只是在打印这些对而不是其他对时更好。这是他们看起来不同的唯一原因。
> (define x '(1 2 3))
> (car (cons 0 x))
0
> (cdr (cons 0 x))
(1 2 3)
方案列表实际上只是由这个公式递归定义的
- 列表是一对数据和一个列表
'()
是一个列表。(真的这完全是武断的,可以是任何东西,'()
只是一个非常强大的传统)
于 2013-04-06T09:26:39.293 回答
0
你仍然可以用cons
它来做。
(cons 'x '(a b c d)) ; => (x a b c d)
于 2013-04-06T09:26:01.360 回答