Differences between p and puts in Ruby In short p Prints an inspected version of the argument AND returns the argument. [1] pry(main)> name = p [["Hello"]]