Welcome to the Treehouse Community

The Treehouse Community is a meeting place for developers, designers, and programmers of all backgrounds and skill levels to get support. Collaborate here on code errors or bugs that you need feedback on, or asking for an extra set of eyes on your latest project. Join thousands of Treehouse students and alumni in the community today. (Note: Only Treehouse students can comment or ask questions, but non-students are welcome to browse our conversations.)

Looking to learn something new?

Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and a supportive community. Start your free trial today.

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