【问题标题】:Ruby equivalent of Perl Data::DumperPerl Data::Dumper 的 Ruby 等价物
【发布时间】:2010-01-29 02:02:43
【问题描述】:

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

【问题讨论】:

    标签: ruby perl-module


    【解决方案1】:

    看pp

    示例:

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

    还有检查方法也很好用

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

    【讨论】:

      【解决方案2】:

      如果我需要快速检查某些内容,我通常会使用 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
      >> 
      

      最后的=&gt; nil 只是表示该方法没有返回任何内容。它与您的数据结构无关。

      【讨论】:

        【解决方案3】:

        您可以使用MarshalamarshalYAML

        【讨论】:

        • 顺便说一句,感谢所有这些模块。这是我可以使用的非常好的信息。
        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2016-06-12
        • 1970-01-01
        • 2012-04-07
        • 1970-01-01
        • 1970-01-01
        • 2011-03-08
        相关资源
        最近更新 更多