在Ruby中,有没有办法使用像hash.each_with_index do | ,i |?

否则,它需要

h = {:a => 1, :b => 2.2} h.each_with_index do |pair, i| k = pair[0]; v = pair[1] pk, v, i end 

这样设置kv似乎有点笨拙。 它可以更简单或类似的东西

 h.each_with_index do |[k,v], i| 

其实是的! 使用括号:

 h = {:a => 1, :b => 2.2} h.each_with_index do |(k, v), i| pk, v, i end