Ruby使用数组索引作为键将数组转换为哈希

Ruby使用数组索引作为键将数组转换为哈希,ruby,Ruby,如何将数组[a,b,c,d]转换为一个散列,其中键等于数组索引+1。{1=>a,2=>b,3=>c,4=>d}以下是我的工作: (1..a.size).zip(a) # => [[1, "a"], [2, "b"], [3, "c"], [4, "d"]] (1..a.size).zip(a).to_h # => {1=>"a", 2=>"b", 3=>"c", 4=>"d"} 哦,太好了!我本来打算建议[a,b,c,d],每一个都用{u index1.to

如何将数组[a,b,c,d]转换为一个散列,其中键等于数组索引+1。{1=>a,2=>b,3=>c,4=>d}

以下是我的工作:

(1..a.size).zip(a)
# => [[1, "a"], [2, "b"], [3, "c"], [4, "d"]]
(1..a.size).zip(a).to_h
# => {1=>"a", 2=>"b", 3=>"c", 4=>"d"}

哦,太好了!我本来打算建议[a,b,c,d],每一个都用{u index1.to{u a.map&:reverse.to{u h或其他什么东西,但这要干净得多。@Ajedi32另一个是a.each{u index.with{u object I,h{I+1]=a[I]}D
(1..a.size).zip(a)
# => [[1, "a"], [2, "b"], [3, "c"], [4, "d"]]
(1..a.size).zip(a).to_h
# => {1=>"a", 2=>"b", 3=>"c", 4=>"d"}