ruby - 将一个哈希值的ruby 键转换为另一个哈希值的值

  显示原文与译文双语对照的内容
0 0

我必须像这样散列:


hash1 = {
"a" => 1,
"b" => 1,
"c" => 1,
"d" => 1
}

hash2 = {
"1" => 1,
"2" => 1,
"3" => 1,
"4" => 1
}

我需要把它们合并起来这样我就会得到这样的结果:


hash1 = {
"a" =>"1",
"b" =>"2",
"c" =>"3",
"d" =>"4"
}

但我不知道从哪儿开始。 帮助帮助。

时间: 原作者:

0 0

你可以尝试以下操作:


Hash[hash1.keys.zip(hash2.keys)]

首先,你可以使用 hash1.keyshash2.keys 获得每个散列的密钥:


["a","b","c","d"]
["1","2","3","4"]

第二个,你创建一个带有 hash1.keys.zip(hash2.keys)的数组的array:


[["a","1"], ["b","2"], ["c","3"], ["d","4"]]

首先,使用 Hash[<...>] 创建一个 Hash,其中第一个内部 array的第一个值作为键,第二个值为::


{"a"=>"1","b"=>"2","c"=>"3","d"=>"4"}

示例

原作者:
...