gpt4 book ai didi

list - 二郎:头|尾端

转载 作者:行者123 更新时间:2023-12-02 01:41:06 28 4
gpt4 key购买 nike

我刚刚开始使用 Erlang(虽然有一些 lisp 背景)并且有一个关于列表模式匹配的问题。

如果我说

[Head | Tail] = [1, 2, 3].

然后我得到
Head = 1
Tail = [2, 3]

如果我想从另一端做同样的事情 无需两次反转列表 ,是否有一些简洁的模式?我希望能够这样说:
[All_but | last] = [1, 2, 3].

并得到:
All_but = [1, 2]
last = 3

谢谢。

PS:我知道我的例子是不正确的行为。

最佳答案

没有简洁的模式。您可以使用功能lists:lastlists:droplast ,遍历整个列表以找到尾部:

> lists:last([1,2,3]).
3
> lists:droplast([1,2,3]).
[1,2]

如果您要对长列表执行此操作,您可能希望编写一个函数,该函数只遍历列表一次,但同时返回新列表和最后一个元素。 source code for lists:last and lists:droplast 可以作为灵感。

关于list - 二郎:头|尾端,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28568581/

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