Ram Rachum
Ram Rachum

Reputation: 88528

What does % do to strings in Python?

I have failed to find documentation for the operator % as it is used on strings in Python. What does this operator do when it is used with a string on the left hand side?

Upvotes: 32

Views: 50518

Answers (4)

Konrad Rudolph
Konrad Rudolph

Reputation: 545508

It's the string formatting operator. Read up on string formatting in Python.

format % values

Creates a string where format specifies a format and values are the values to be filled in.

Upvotes: 41

Bastien Léonard
Bastien Léonard

Reputation: 61693

Note that starting from Python 2.6, it's recommended to use the new str.format() method:

>>> "The sum of 1 + 2 is {0}".format(1+2)
'The sum of 1 + 2 is 3'

If you are using 2.6, you may want to keep using % in order to remain compatible with older versions, but in Python 3 there's no reason not to use str.format().

Upvotes: 8

Diaa Sami
Diaa Sami

Reputation: 3307

It applies printf-like formatting to a string, so that you can substitute certain parts of a string with values of variables. Example

# assuming numFiles is an int variable
print "Found %d files" % (numFiles, )

See the link provided by Konrad

Upvotes: 10

lutz
lutz

Reputation:

The '%' operator is used for string interpolation. Since Python 2.6 the String method "format" is used insted. For details see http://www.python.org/dev/peps/pep-3101/

Upvotes: 6

Related Questions