【发布时间】:2013-10-30 12:28:59
【问题描述】:
我正在尝试创建一个具有符号/令牌和传入列表的函数
然后该函数将检查列表是否包含符号/令牌。如果是则返回其对应的密钥对,如果不是则返回 nul
我做了一个定义参数:
(defparameter *pairs*
'((apple green)
(banana yellow)
(grape purple)))
然后我做了一个函数来完成这个任务:
(defun list-pairs (word list)
(if (eq word list)
(rest(list)))
nil))
这样执行时的函数:(list-pairs '(banana) *pairs*) 我不断得到 nul
我想要返回的是黄色,即密钥对
有人可以帮我解释什么是错的。我对 LISP 很陌生
【问题讨论】:
-
为什么不使用 LISP 哈希机制,如下所述:stackoverflow.com/questions/1837438/…
-
因为我才刚刚开始学习 lisp,所以我只是在使用更高级的东西之前尝试使用基础知识完成任务:) 即只使用 defun、if 语句、缺点,首先,rest zerop,编号等
标签: list if-statement functional-programming lisp common-lisp