2010-01-29 24 views
16

Estoy aprendiendo Ruby & Perl tiene este módulo muy conveniente llamado Data :: Dumper, que le permite analizar recursivamente una estructura de datos (como hash) & le permiten imprimirlo. Esto es muy útil durante la depuración. ¿Hay algo similar para Ruby?Ruby equivalente de Perl Data :: Dumper

Respuesta

18

Mira en pp

ejemplo:

require 'pp' 
    x = { :a => [1,2,3, {:foo => bar}]} 
    pp x 

También existe el método que también funciona bastante bien

x = { :a => [1,2,3, {:foo => bar}]} 
    puts x.inspect 
2

puede utilizar Marshal, amarshal, YAML

+0

Por cierto, gracias por todos esos módulos. Esa es realmente una buena información que podría usar. – John

3

inspeccionar Normalmente uso un YAM L volcar si necesito verificar algo rápidamente.

En irb la sintaxis es simplemente y obj_to_inspect. En una aplicación Ruby normal, es posible que deba agregar un require 'YAML' al archivo, no estoy seguro.

Aquí se muestra un ejemplo en irb:

>> my_hash = {:array => [0,2,5,6], :sub_hash => {:a => 1, :b => 2}, :visible => true} 
=> {:sub_hash=>{:b=>2, :a=>1}, :visible=>true, :array=>[0, 2, 5, 6]} 
>> y my_hash # <----- THE IMPORTANT LINE 
--- 
:sub_hash: 
    :b: 2 
    :a: 1 
:visible: true 
:array: 
- 0 
- 2 
- 5 
- 6 
=> nil 
>> 

La final => nil sólo significa que el método no devuelve nada. No tiene nada que ver con tu estructura de datos.

Cuestiones relacionadas