elixir - Elixir:如何反转映射(交换键和值)?
问题描述
我有一张这样的地图:
%{
"US" => "United States",
"CA" => "Canada",
"NL" => "The Netherlands"
}
我想用值交换键,得到这样的映射:
%{
"United States" => "US",
"Canada" => "CA",
"The Netherlands" => "NL"
}
像这样“反转”或“反转”地图的最佳方法是什么?我在任何地方都看不到它的专用功能。
解决方案
一种简单的方法是使用Map.new
. 它需要一个函数,您可以在其中为每对指定新的键和值:
Map.new(map, fn {key, val} -> {val, key} end)
推荐阅读
- android - google play 控制台如何正确填写权限声明表?
- algorithm - 用孔捕获雨水 ii (LeetCode) (0)
- html - html 视频标签全屏控制在 Chrome 中无法正常工作
- sql - Oracle查询以根据另一列值选择不同的值
- c# - 与 jquery 中继器绑定的 asp.net core mvc 模型
- html - 为什么服务器返回的 HTML 页面没有在浏览器中呈现
- python - 重复避免 ValueError
- python - 打印为 PDF 后无法阅读的文本
- airflow - 气流连接 UI 不可见
- vb.net - 从字符串“Label9”到类型“Double”的转换无效