Welcome to the Treehouse Community

Want to collaborate on code errors? Have bugs you need feedback on? Looking for an extra set of eyes on your latest project? Get support with fellow developers, designers, and programmers of all backgrounds and skill levels here with the Treehouse Community! While you're at it, check out some resources Treehouse students have shared here.

Looking to learn something new?

Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and join thousands of Treehouse students and alumni in the community today.

Start your free trial

Ruby Ruby Modules Include and Extend Extend

Isis van der Plas
Isis van der Plas
13,445 Points

what does "%s" mean?

I'm confused what the "%s" and the "%" following it mean, in this line of code:

    puts "Customer.instances: %s" % Customer.instances.inspect

I thought "%s" was a way of having quotationmarks within quotationmarks so to speak, but that doesn't make any sense in this code.

1 Answer

Yehuda Anthony
PLUS
Yehuda Anthony
Courses Plus Student 6,893 Points

This code has a basic format of: str % arg -> new_str (non-interpolated symbols). It uses str as a format specification, and returns the result of applying it to arg. If the format specification contains more than one substitution, then arg must be an Array or Hash containing the values to be substituted. Another example would be: puts "hello, %s. Where is %s?" % ["John","Mary"] -> "hello, John. Where is Mary?"

reference: http://ruby-doc.org/core-2.5.0/String.html