elisp的列表包含一个值(Elisp List Contains a Value)

2019-08-05 01:34发布

你如何检查,在elisp的,如果列表包含的值? 所以下面将返回T:

(contains 3 '(1 2 3))

(contains 5 '(1 2 3))

将返回零。

Answer 1:

你需要的功能是member

例如:

(member 3 '(1 2 3))

它会返回列表的尾部他的车子元素 。 虽然这不是严格t , 任何非零值等同于真正的布尔运算 。 此外, member使用equal测试相等,则使用memq (使用更严格的平等eq )。



Answer 2:

freiksenet的回答是好习惯。 如果你正在使用dash.el ,你也可以调用函数-contains? ,它不完全一样,检查是否有些列表中包含的元素:

(-contains? '(1 2 3) 2) ; t


文章来源: Elisp List Contains a Value
标签: emacs elisp