用法
str.format()方法会返回一个新的字符串,在新的字符串中,原字符串的替换字段(大括号中和数字是预留的替换字段)被format方法中的参数代替。
替换字段被format方法中参数代替有一下集中形式-------------------------
按照位置
'{0},{1}'.format('kzc',18) #按照替换字段中的数字带入format方法中的参数
'kzc,18'
'{},{}'.format('kzc',18) #替换字段中没有数字就按照顺序带入format方法中的参数
'kzc,18'
'{1},{0},{1}'.format('kzc',18)
'18,kzc,18'
值得注意的是,如果格式化字符串包括大括号,就需要将他复写
>>> "{{{0}}}".format("fsdg")
'{fsdg}'
按照字段名
>>> "{who}今年已经{age}岁了".format(who="王尼玛",age=88)
'王尼玛今年已经88岁了'
>>> "{who}今年已经{0}岁了".format(88,who="王尼玛") #按照位置与按照字段名同时使用
'王尼玛今年已经88岁了'
>>>
按照索引
对列表
>>> name=["王尼玛","叫兽小星","老湿"]
>>> age=[23,34,45,567]
>>> "{0[0]}和{0[1]}是好基友,他们已经搞基{1[3]}年了".format(name,age)
'王尼玛和叫兽小星是好基友,他们已经搞基567年了'
对字典
>>> "{0[name]}已经{0[age]}岁了".format(stock)
'王尼玛已经99岁了
按照对象
>>> import sys
>>> import math
>>> "math.pi=={0.pi}sys.maxunicode=={1.maxunicode}".format(math,sys)
'math.pi==3.141592653589793sys.maxunicode==1114111'
格式规约符
字符串格式规约
格式限定符是通过{}中带:号带入的。
后面跟随的可选字符对是:
填充字符X对齐字符(<左对齐,^中间对齐,>右对齐)X可选最小宽度(如果指定最大宽度,就用句号隔开并再写一个整数)
>>> "{0:-^10}".format("输入进去")
'---输入进去---'
>>> "{0:.{1}}".format("66666666666666666",maxwidth)
'666666666666'
整数格式规约
格式限定符是通过{}中带:号带入的。
后面跟随的可选字符对是:
填充字符X对齐字符(<左对齐,^中间对齐,>右对齐,=用于在符号和数字之间进行填充)X"+"表示必须输出符号,"-"表示只输出负数符号," "表示正数输出空格,负数输出符号X可选#引导b(二进制)、o(八进制)、x(16进制)可选最小宽度(不能指定最大宽度)
>>> "{0:b},{0:o},{0:x},{0:X}".format(999)
'1111100111,1747,3e7,3E7'
>>> "{0:#b},{0:#o},{0:#x},{0:#X}".format(999)
'0b1111100111,0o1747,0x3e7,0X3E7'
>>>
>>> "{0:0= 4}".format(23)
' 023'
>>> "{0:0=-4}".format(23)
'0023'
上一讲:
Python菜鸟晋级07----闭包
欢迎收听我的微信公众号