Ruby里和Perl中的Data :: Dumper相同的代码是什么?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (14)

我正在学习Ruby&Perl有这个非常方便的模块,称为Data :: Dumper,它允许递归分析数据结构(如哈希)并允许输出它。这在调试时非常有用。Ruby有没有类似的东西?

提问于
用户回答回答于

看看pp

例:

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

还有检查方法也很好

  x = { :a => [1,2,3, {:foo => bar}]}
  puts x.inspect
用户回答回答于

如果我需要快速检查某些内容,我通常会使用YAML转储。

irb语法很简单y obj_to_inspect。在普通的Ruby应用程序中,可能需要添加一个require 'YAML'到该文件,不确定。

这里是一个例子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
>> 

最后=> nil只是意味着该方法没有返回任何东西。它与你的数据结构无关。

扫码关注云+社区