【发布时间】:2014-11-06 19:16:51
【问题描述】:
将像[{1,2},{3,4}] 这样的两个项目元组的列表转换为映射%{1=>2, 3=>4} 的优雅方法是什么?
关键字列表很简单,但如果我们有任意关键字呢?
【问题讨论】:
-
从谷歌来到这里,希望将关键字列表转换为地图。你能详细说明一下这个微不足道的操作吗? :)
标签: elixir
将像[{1,2},{3,4}] 这样的两个项目元组的列表转换为映射%{1=>2, 3=>4} 的优雅方法是什么?
关键字列表很简单,但如果我们有任意关键字呢?
【问题讨论】:
标签: elixir
最简单的方法是:
Enum.into(list, %{})
【讨论】:
Map.new/1 之前是created,但Map.new 是最简单的方法(参见丹尼斯的答案)。
Map 模块还支持将列表作为new 函数的参数:
iex> Map.new([{1, 2}, {3, 4}])
%{1 => 2, 3 => 4}
【讨论】:
我刚刚得到它:
list = [{1,2},{3,4}]
themap = for e <- list, into: %{}, do: e
【讨论】:
Enum.into(list, %{}).