分解列表并用索引号标记每个元素

发布于 2024-09-28 08:27:48 字数 88 浏览 0 评论 0原文

如何拆分作为参数传递给函数的列表并用数字标记每个元素?

我遇到的问题是如何在 erlang 中递增,因为没有 for 循环。

谢谢

How does one split a list which is passed as an argument to a function and tag each element with a number?

The problem I have is how to increment in erlang as there are no for loops.

Thanks

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

埋葬我深情 2024-10-05 08:27:48

这就是你想做的吗?

tagger(List) ->
    tagger(List, 0).
tagger([Head|Tail], Index) ->
    [{Head, Index}|tagger(Tail, Index + 1)];
tagger([], _Index) ->
    [].

因为如果是的话,您可以使用lists:mapfoldl

lists:mapfoldl(fun (A, AccIn) -> {{A, AccIn}, AccIn + 1} end, 0, List).

Is this what you're trying to do?

tagger(List) ->
    tagger(List, 0).
tagger([Head|Tail], Index) ->
    [{Head, Index}|tagger(Tail, Index + 1)];
tagger([], _Index) ->
    [].

Because if it is, you can use lists:mapfoldl:

lists:mapfoldl(fun (A, AccIn) -> {{A, AccIn}, AccIn + 1} end, 0, List).
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文