gpt4 book ai didi

lisp - 普通口齿不清 : getting all keys of a given hash table as a list

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

我想知道是否有比使用循环更简洁的方法。无论如何,这在 CLISP 中对我有用:

(loop for key being the hash-keys of *my-hash* collect key)

我见过其他人使用 maphash,但这涉及到将每个键累积到一个列表中。除了比使用循环更复杂之外,它还引入了一个副作用,我尽可能地避免它——我尽可能地喜欢函数式编程:)

对于这个常见任务,是否有任何类似这样的预定义,即使是特定于实现的?

(defun hash-keys (hash-table)
(loop for key being the hash-keys of hash-table collect key))

最佳答案

Common Lisp 出现在“内置电池”理念流行之前,大多数功能预计将由第三方库提供,而不是实现。虽然 Common Lisp 有时被称为大型语言,但它仅与 C 等类似语言相比,与 Python 和其他拥有大量标准库的语言相比,该语言本身非常小。

为此特定目的,Alexandria是一个常用的 Common Lisp 实用程序集合。在许多其他内容中,它包含 hash-table-keys

关于lisp - 普通口齿不清 : getting all keys of a given hash table as a list,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9719852/

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