format函数可以接受不限个参数,位置可以不按顺序。
基本语法是通过{ }和:来代替c语言的%。
>>> a="名字是:{0},年龄是:{1}" >>> a.format("煮雨",18) '名字是:煮雨,年龄是:18'
{0},{1}代表的占位符,数字占位符要注意顺序。
>>> c="名字是:{name},年龄是:{age}" >>> c.format(age=19,name='煮雨') '名字是:煮雨,年龄是:19'
def show(n): tail = "*"*(2*n-1) #最底下一行显示出(2*n-1)个星号 width = len(tail) #计算星号所在行的宽度,作为其他行的对齐基准 for i in range(1,2*n,2): print("{:^{}}".format("*"*i,width))
format函数读取变量时候由外向内:
show(5)
输出结果如下所示:*
***
*****
*******
********* #tail变量,显示出9个星号(n = 5)
def show(n): tail = "*"*(2*n-1) width = len(tail) for i in range(1,2*n,2): print("{:>{}}".format("*"*i,width))
show(5)
输出结果如下所示:*
***
*****
*******
*********
def show(n): tail = "*"*(2*n-1) width = len(tail) for i in range(1,2*n,2): print("{:<{}}".format("*"*i,width))
show(5)
输出结果如下所示:*
***
*****
*******
*********