Elixir中有一个类似于Python枚举的快捷方式吗?

Dar*_*ody 7 elixir

在Python中:

>>> seasons = ['Spring', 'Summer', 'Fall', 'Winter']
>>> list(enumerate(seasons))
[(0, 'Spring'), (1, 'Summer'), (2, 'Fall'), (3, 'Winter')]
Run Code Online (Sandbox Code Playgroud)

它基本上采用可迭代的方式,并将每个项目的索引添加到项目本身.

Elixir中是否有相同的名称?

Dar*_*ody 7

因此,Elixir IRC频道中一位乐于助人的人(OliverMT)向我指出了正确的方向:

iex> Enum.with_index [1,2,3]
[{1,0},{2,1},{3,2}]
Run Code Online (Sandbox Code Playgroud)

文件:Enum.with_index/1

注意:与Python的结果相比,索引/值的顺序是交换的.
例如,它是{value,index}而不是(index,value),就像在Python中一样.