Lisp 从列表中返回元素
我正在努力学习lisp,当我迈出第一步时,我被卡住了。 如何从以下列表中获取c元素:Lisp 从列表中返回元素,lisp,common-lisp,Lisp,Common Lisp,我正在努力学习lisp,当我迈出第一步时,我被卡住了。 如何从以下列表中获取c元素:(ab(c.d)) 我试过:(caar(last'(ab(c.d)))但它返回c.d,而不仅仅是c 但是,如果c和c之间存在空格,则此选项有效,d ie:(caar(最后一个)(a b(c.d)) 我试图解决的问题指定了不带空格的列表。这是可以做到的,还是练习中的拼写错误 谢谢 LE:使用GNU Clisp 问题是否可能是由实施引起的 您的代码是正确的,这是练习中的一个输入错误(或者可能是一个非常糟糕的字体?)
(ab(c.d))
我试过:(caar(last'(ab(c.d)))
但它返回c.d,而不仅仅是c但是,如果c和c之间存在空格,则此选项有效,d ie:
(caar(最后一个)(a b(c.d))
我试图解决的问题指定了不带空格的列表。这是可以做到的,还是练习中的拼写错误
谢谢
LE:使用GNU Clisp
问题是否可能是由实施引起的 您的代码是正确的,这是练习中的一个输入错误(或者可能是一个非常糟糕的字体?) 在Lisp中(Common Lisp和Scheme是我刚才测试的两个,我不知道Clojure),[几乎]符号之间唯一的划分是空格和括号。尽管用作
cons
的文字语法,如果键入'(c.d)
,则列表中会有一个符号,而不是cons单元格中的两个符号
比如说,
'c.d ; is one symbol
'(c . d) ; is two symbols in a single cons cell
'((c)d) ; is two symbols, the first in a nested list
编辑:因为您使用的是CommonLisp,所以下面是和。总之,
(
和)
是终止字符,而
不是。CLisp是根据公共Lisp规范执行的。您的代码是正确的,在练习中是一个输入错误(或者可能是一个非常糟糕的字体?)
在Lisp中(Common Lisp和Scheme是我刚才测试的两个,我不知道Clojure),[几乎]符号之间唯一的划分是空格和括号。尽管用作cons
的文字语法,如果键入'(c.d)
,则列表中会有一个符号,而不是cons单元格中的两个符号
比如说,
'c.d ; is one symbol
'(c . d) ; is two symbols in a single cons cell
'((c)d) ; is two symbols, the first in a nested list
编辑:因为您使用的是CommonLisp,所以下面是和。总之,
(
和)
是终止字符,而
不是。CLisp是根据通用Lisp规范执行的。我看你在练习中有输入错误
(c.d)是用点对表示法显示的cons单元格
这里有一个链接,里面有更多关于这个的内容。我看你在练习中有输入错误 (c.d)是用点对表示法显示的cons单元格
这里有一个链接,上面有更多关于这个的内容听起来像是打字错误。你在用什么Lisp?这个问题和你已经发布的另一个问题有何不同?我对Lisp真的很陌生,第一课,我只是想理解一下,所以这个问题对我来说似乎不同:-??抱歉,如果是类似的声音,就像打字错误一样。你在用什么Lisp?这个问题和你已经发布的另一个问题有何不同?我对Lisp真的很陌生,第一课,我只是想理解一下,所以这个问题对我来说似乎不同:-??如果是相似的,我很抱歉