之前,如果我们想在字符串中间加变量,都是这样做的:
name = 'Warren Sande'print 'My name is', name, 'and I wrote this book.'
运行这个代码时,会得到:
My name is Warren Sande and I wrote this book.
不过要在字符串中插入变量还有一种方法,利用这种方法,可以更好地控制变量(特别是数字)的显示。我们可以使用格式字符串(format string),其中使用了百分号(%
)。下面假设希望在 print
语句中间插入一个字符串变量,就像前面一样。如果利用格式字符串,可以这样做:
name = 'Warren Sande'print 'My name is %s and I wrote this book' % name
这里有两处用到 %
符号。先是用在字符串中间,指示要把变量放在什么位置。然后在字符串后面再次用到,告诉 Python 接下来就是我们希望在字符串中插入的变量。
%s
表示我们想插入一个字符串变量。如果想插入整数,要使用 %i
;想插入浮点数,则要使用 %f
。
下面再给几个例子:
age = 13print 'I am %i years old.' % age
运行这个代码时,会得到下面的输出:
I am 13 years old.
再看这个例子:
average = 75.6print 'The average on our math test was %f percent.' % average
运行这个代码时,会得到下面的输出:
The average on our math test was 75.600000 percent.
%s
、%f
和 %i
都称为格式字符串,这些代码用来指示如何显示变量。
格式字符串中还可以增加一些其他内容,从而完全按你希望的方式打印数字。你还可以使用一些不同的格式字符串得到类似 E 记法的结果。(应该还记得第 3 章介绍的 E 记法吧?)我们将在后面几节学习这些内容。