【发布时间】:2017-01-04 16:11:58
【问题描述】:
我有一个整数哈希作为键和字符串数组作为值。我需要将其转换为一个新的哈希,该哈希与原始哈希值中的字符串数组中的每个项目反转这种关系,成为新哈希中的一个键,每个原始键成为关联值。例如:
original = {1 => ['a', 'b', 'c'], 2 => ['g', 'm', 'z']}
new_hash = {'a' => 1, 'b' => 1, 'c' => 1, 'g' => 2, 'm' => 2, 'z' => 2}
我正在努力从原始数组值中提取项目。这很容易做到
original.each { |k, v| new_hash[v] = k }
但这会将原始数组保留为新键。我试过做类似的事情
original.each { |k, v| new_hash[v.each { |i| i }] = k }
但由于某种原因,这也会返回原始数组。
【问题讨论】: