gpt4 book ai didi

Elisp:无法掌握 setq 和 sort 的效果

转载 作者:行者123 更新时间:2023-12-01 09:06:10 25 4
gpt4 key购买 nike

在 Emacs 中评估以下代码时,我得到 (2 3) 作为 x 的最终值。我希望(1 2 3)。我错过了什么?

(setq x '(2 1 3))
(sort x '<)
x

最佳答案

如果你阅读sort的文档,你会发现它返回排序后的列表,输入列表被修改效果。它并没有说参数列表将包含排序结果——它只是被排序算法以某种方式修改。或者,简而言之:sort破坏性

因此,您需要绑定(bind)/分配 sort 的返回值:

elisp> (setq x '(2 1 3))
(2 1 3)

elisp> (setq x (sort x '<))
(1 2 3)

elisp> x
(1 2 3)

关于Elisp:无法掌握 setq 和 sort 的效果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7223175/

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