1

In Python there is dict.inspect() method that returns a list of tuples (link). Is there a similar method in ruby to achieve, well, an array of arrays?

#input
{:a => 1, :b => 2}

#result
[[:a, 1], [:b, 2]]
Community
  • 1
  • 1
Ernest
  • 8,701
  • 5
  • 40
  • 51

1 Answers1

5

Calling to_a on the hash will do that.

{:a => 1, :b => 2}.to_a
#=> [[:b, 2], [:a, 1]]

As you can see in the example output, the order is not necessarily preserved (at least not in ruby 1.8, in ruby 1.9 the order is preserved).

sepp2k
  • 363,768
  • 54
  • 674
  • 675