我知道我可以通过这样做在 Elixir 中将偶数列表分成两半:
list = [1, 2, 3, 4, 5, 6]
len = length(list)/2 |> round
[a, b] = Enum.chunk(list, len) # => [[1, 2, 3], [4, 5, 6]]
但是是否有内置的ruby-esque方法或更有效的方法来处理奇数长度列表?
最佳答案
Enum.chunk实际上需要 4 个参数,如果包含第 4 个( pad
)参数,则将使用奇数长度列表:
iex(14)> Enum.chunk([1,2,3,4,5], 3, 3, [])
[[1, 2, 3], [4, 5]]
关于elixir - 将列表分成两等分 (±1),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33047007/