format语法格式:
def format(self, *args, **kwargs): # known special case of str.format """ S.format(*args, **kwargs) -> str Return a formatted version of S, using substitutions from args and kwargs. The substitutions are identified by braces ('{' and '}'). """ pass
format参数格式:
'{[index][ : [fill] align][sign][#][width][.precision][type]} {……}{……} '.format()
注意,格式中的[ ]内的参数都是可选参数,可以使用也可以不使用
foramt会把参数按位置顺序来填充到字符串中,第一个参数是0,然后1 ……也可以不输入数字,则会按照顺序自动分配,而且一个参数可以多次插入
示例代码:
name = '张三' age = 25 sex = '男' print('{}、{}、{}'.format(name, age, sex)) # 占位符不指定顺序 print('{0}、{1}、{2}'.format(name, age, sex)) # 占位符制定顺序 print('{0}、{2}、{1}'.format(name, age, sex)) # 换一下顺序试试 print('{0}、{2}、{1}、{0}、{2}、{1}'.format(name, age, sex))
运行结果:
示例代码:
name1 = '张三' age1 = 25 sex1 = '男' print('name:{name}、age={age}、sex:{sex}'.format(name=name1, age=age1, sex=sex1)) print('name:{name}、sex:{sex}、age={age}'.format(name=name1, age=age1, sex=sex1))
运行结果:
示例代码:
lst1 = ['张三', '男', 25] lst2 = ['李四', '男', 28] print('name:{Lst[0]},sex:{Lst[1]},age:{Lst[2]}'.format(Lst=lst1)) print('name:{0[0]},sex:{0[1]},age:{0[2]}'.format(lst1)) print('name:{0[0]},sex:{0[1]},age:{0[2]}'.format(lst2)) print('name:{0[0]},sex:{0[1]},age:{0[2]}'.format(lst1, lst2)) print('name:{1[0]},sex:{1[1]},age:{1[2]}'.format(lst1, lst2)) print('name:{0[0]},sex:{0[1]},age:{0[2]},name:{1[0]},sex:{1[1]},age:{1[2]}'.format(lst1, lst2))
运行结果:
示例代码:
dic1 = {'name': '张三', 'sex': '男', 'age': 25} dic2 = {'name': '李四', 'sex': '男', 'age': 28} print('name:{Dic[name]},sex:{Dic[sex]},age:{Dic[age]}'.format(Dic=dic1)) print('name:{name},sex:{sex},age:{age}'.format(**dic2))
运行结果:
示例代码:
class Info(object): name = '张三' sex = '男' age = 25 print('name:{info.name},sex:{info.sex},age:{info.age}'.format(info=Info))
运行结果:
*args表示任何多个无名参数,它是一个tuple or list;**kwargs表示关键字参数,它是一个 dict。
示例代码:
lst = [',', '.'] dic = {'name': '张三', 'sex': '男', 'age': 25} print('name:{name}{0}sex:{sex}{0}age:{age}{1}'.format(*lst, **dic))
运行结果:
示例代码1:
# python :^:代表居中显示,数字567,位数width=10,fill=*(填充符为*) print('{:*^10}'.format(567))
运行结果:
示例代码2:
# python :0是填充符,2是width,表示位数为2 print('{:02}:{:02}:{:02}'.format(13, 4, 57)) print('{:05}:{:05}:{:05}'.format(13, 4, 57))
运行结果: