gpt4 book ai didi

emacs - 内置 Emacs Lisp 库中此函数的名称?

转载 作者:太空宇宙 更新时间:2023-11-03 18:33:12 24 4
gpt4 key购买 nike

以下 Emacs Lisp 函数接受一个列表列表并返回一个列表,其中内部列表的项目已连接到一个大列表。它非常简单明了,我相信像这样的东西一定已经成为标准函数库的一部分。

(defun flatten (LIST)
(if LIST
(append (car LIST) (flatten (cdr LIST)))
nil))

我正在寻找一个函数,它将单个列表列表作为其参数,然后附加所有内部列表。

(flatten '((a b) (c d)))

会给予

(a b c d)

有谁知道这个函数是否已经内置,如果是,名称是什么?

谢谢!

最佳答案

你要么在寻找追加:

(defun flatten (list-of-lists)  (apply #'append list-of-lists))

如果(且仅当)您知道您将始终拥有列表列表。

否则:

(defun flatten (list)  (mapcan (lambda (x) (if (listp x) x nil)) list))

关于emacs - 内置 Emacs Lisp 库中此函数的名称?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/969067/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com