打破列表并使用索引号标记每个元素

jar*_*ryd 0 erlang

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

我遇到的问题是如何增加erlang,因为没有for循环.

谢谢

nmi*_*els 5

这是你想要做的吗?

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

因为如果是,你可以使用lists:mapfoldl:

lists:mapfoldl(fun (A, AccIn) -> {{A, AccIn}, AccIn + 1} end, 0, List).
Run Code Online (Sandbox Code Playgroud)