P, Print, and Puts in Ruby

Chenyun Zhang
Jul 21, 2021

Unlike other programming languages, Ruby has p, print, puts to print out information to the command line. For Ruby beginners, it might be a little bit confusing to figure out when to use what.

print calls to_s on the object, it doesn’t append a new line.

> print 1,2,3
123 => nil

puts call to_s and add a new line to the output

> puts 1,2,3
1
2
3
=> nil

p calls inspect method and adds a new line. p is more useful for debugging, as it returns the original data type.

> p 1,2,3
1
2
3
=> [1,2,3]

In short:

--

--