ruby - 如何在 Ruby 中将键值对列表转换为哈希,以便将具有重复键的值存储在数组中?

标签 ruby dictionary key-value

给定一个列表键值对,以数组数组的形式 - 例如[ ["key1","value1"], ["key2","value2"], ["key1", "value3"] ],如何把这些转换成一个Hash,存储所有的值,以最优雅的方式?

对于上面的示例,我想要获取 { "key1"=> [ "value1", "value3"], "key2"=> [ "value2"] }

最佳答案

[["key1","value1"], ["key2","value2"], ["key1", "value3"]]
.group_by(&:first).each{|_, v| v.map!(&:last)}

关于ruby - 如何在 Ruby 中将键值对列表转换为哈希,以便将具有重复键的值存储在数组中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31609266/

相关文章:

ruby - 如何从Ruby方法中删除多重 yield ?

ruby - 启动和停止 Ruby 线程

Swift 使用子字典设置 firebase 字典的值

c# - 在具有特定值的字典中获取第一个 KeyValuePair

python - 检查字典中键内的键

java - 仅显示 List<Map<String, List<String>>> 中的 map 键

Ruby URI - 如何在 URL 之后获取完整路径

ruby-on-rails - 根据提交恢复到 gem 版本

Python创建多层动态字典

c# - 如何使用反射获取对象中的所有变量?