enumerate(List1) -> List2
OTP 25.0enumerate(Index, List1) -> List2
OTP 25.0enumerate(Index, Step, List1) -> List2
OTP 26.0
类型:
List1 = [T]
List2 = [{Index, T}]
Index = Step = integer()
T = term()
返回 List1
,其中每个元素 H
替换为 {I, H}
形式的元组,其中 I
是 H
在 List1
中的位置。枚举从Index
开始,并在每个步骤中增加Step
。
也就是说,enumerate/3
的行为就好像它已被定义如下:
enumerate(I, S, List) ->
{List1, _ } = lists:mapfoldl(fun(T, Acc) -> {{Acc, T}, Acc+S} end, I, List),
List1.
Index
和 Step
的默认值都是 1
。
例子:
> lists:enumerate([a,b,c]).
[{1,a},{2,b},{3,c}]
> lists:enumerate(10, [a,b,c]).
[{10,a},{11,b},{12,c}]
> lists:enumerate(0, -2, [a,b,c]).
[{0,a},{-2,b},{-4,c}]
相关用法
- erlang encode_unsigned(Unsigned, Endianness)用法及代码示例
- erlang encode_hex(Bin)用法及代码示例
- erlang exp用法及代码示例
- erlang equal用法及代码示例
- erlang element用法及代码示例
- erlang extension(Filename)用法及代码示例
- erlang element(N, Tuple)用法及代码示例
- erlang erase()用法及代码示例
- erlang erase(Key)用法及代码示例
- erlang error(Reason)用法及代码示例
- erlang error(Reason, Args)用法及代码示例
- erlang exit(Reason)用法及代码示例
- erlang external_size(Term)用法及代码示例
- erlang external_size(Term, Options)用法及代码示例
- erlang erase(Key, Orddict1)用法及代码示例
- erlang erf(X)用法及代码示例
- erlang error_msg(Format)用法及代码示例
- erlang error_report(Report)用法及代码示例
- erlang equal(A, B)用法及代码示例
- erlang extension(BinRel1, Set, AnySet)用法及代码示例
- erlang expand(Bef0)用法及代码示例
- erlang expand(Expansions, ListIn)用法及代码示例
- erlang e(QH)用法及代码示例
- erlang sin用法及代码示例
- erlang cos用法及代码示例
注:本文由纯净天空筛选整理自erlang.org大神的英文原创作品 enumerate(List1) -> List2。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。