Python Strings: Spinning Yarns - The Interpolation Operator (Page 2 of 4 )
When we wish to specify what happens to a value when we insert it into a string, we can do so using the interpolation operator(%). We can use this to insert data inside of a string, determine how many digits are displayed next to a decimal, determine how much space to allow for the data (known as the minimum field width), and more.
Here is a list of possible formatting code you can insert after the interpolation operator(%):
%c - used for a single character
%d and %i - used for signed integer decimals
%f and %F - used for floating point decimals
%r - represents the data
%% - used as an escape character for the percentage symbol
To insert a single character into a string, we can do so, as described above, using %c. Here it is in code:
missing='F'
print 'Which character is missing from the following sequence?'
print 'A B C D E %c G H I J K L M N O P Q R S T U V W X Y Z' %missing
When the code prints, it replaces the code %c with the value in our variable, missing, which in this instance is 'F'. Here is the result:
Which character is missing from the following sequence?
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
If we wanted to insert an entire word or sentence, or string, we could do that as well by using %s:
hawtness='James Payne'
print "And the winner of this years Uber Hawtness award goes to....*drumroll*"
print "The magnanimous, heroic, super-strong, giant-brained, whicka whicka %s ! Whoeee!" %hawtness
In this code, the program sees the %s and replaces it with the value stored in the variable hawtness. The result is:
And the winner of this years Uber Hawtness award goes to....*drumroll*
The magnanimous, heroic, super-strong, giant-brained, whicka whicka James Payne ! Whoeee!
We can, of course, also insert multiple words into our string, using the following method:
hawtness='James Payne'
gf='Angelina Jolie'
name='Jamesalina'
print 'Here comes the hot new hollywood couple now.'
print '%s in an Armani suit, looking dashing and %s in a birthday suit as %s demands it!' % (hawtness, gf, hawtness)
print 'As a couple we dub thee...%s' %name
This displays:
Here comes the hot new hollywood couple now.
James Payne in an Armani suit, looking dashing and Angelina Jolie in a birthday suit as James Payne demands it!
As a couple we dub thee...Jamesalina
The technique works for characters as well:
first='a'
second='b'
third='c'
fourth='d'
fifth='e'
sixth='f'
seventh='g'
eighth='h'
print 'Here are the first eight letters of the alphabet...'
print '%c %c %c %c %c %c %c %c' % (first, second, third, fourth, fifth, sixth, seventh, eighth)
And the result:
Here are the first eight letters of the alphabet...
a b c d e f g h
Next: Changing Strings with Methods >>
More Python Articles
More By James Payne