p和puts之间的差异

时间:2019-05-04 09:25:09

标签: arrays ruby

为什么当我在下面的代码中

p返回整数数组的对象#=> [[1、2、4]]

使对象返回单个整数数组#=> 1                                                        2                                                        4

单整数类仍然是一个数组,但是我不明白为什么它们以单数形式返回。谢谢

class Matrix
  attr_reader :rows, :columns

  def initialize(source)
    @rows = parse_rows_from_source(source)
    @columns = @rows.transpose
  end

  private

  def parse_rows_from_source(source)
    source.lines.map { |line| line.split.map(&:to_i)}
  end
end

p Matrix.new("1, 2/n3, 4").rows```

1 个答案:

答案 0 :(得分:0)

p object等于puts object.inspect

那是主要区别。

Object#inspect返回一个字符串,其中包含人类可读的对象表示形式。