What does % do to strings in Python?
Solution 1:
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.
Solution 2:
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
Solution 3:
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/
Solution 4:
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()
.