在Elixir中创建大小为n的默认初始化列表

时间:2017-01-13 01:25:21

标签: erlang elixir

是否有Elixir或Erlang函数创建大小为n的列表,默认使用给定值初始化?

其他语言的功能示例:

# Python
l = [0] * 5

# Ruby
l = Array.new(5, 0)

# => [0, 0, 0, 0, 0]

1 个答案:

答案 0 :(得分:12)

List.duplicate/2

iex(1)> List.duplicate(:foo, 3)
[:foo, :foo, :foo]

如果要使用某些计算结果初始化列表而不是静态值,您可以始终使用它来进行理解:

iex(2)> for _i <- 1..3, do: :erlang.timestamp()
[{1484, 271802, 581891}, {1484, 271802, 581900}, {1484, 271802, 581906}]