format函数可以接受不限个数,位置可以不按顺序。
1.不设置指定位置,按默认顺序:
print(‘我叫{},今年{}岁‘.format(‘全帅‘,‘80’))
输出:我叫全帅,今年80岁
根据参数,默认按顺序,往{}传值
2.设置指定,根据下标
print(‘我叫{0},今年{1}岁‘.format(‘全帅‘,‘80’) )
输出:我叫全帅,今年80岁
根据0,1下标,参数第一位,传入0,第二位,传入1,第三位传入2,前面{}内填的几,后面就根据前面往里传参;
3.设置参数
print(‘我叫{name},今年{age}岁‘.format(name=‘全帅‘,age=‘80’))
输出:我叫全帅,今年80岁
根据设置的参数,向{}中对应的参数传值;
4.通过字典设置参数
test={‘name‘:‘全帅‘,‘age‘:‘80‘}
print(‘我叫{name},今年{age}岁‘.format(**test))
输出:我叫全帅,今年80岁
**打散字典,后面会有介绍
把字典打散成name=‘全帅‘,age=‘80’的样式,在往前面对应得{}传值
5.通过列表传值
test=[‘全帅‘,‘18‘]
print(‘我叫{0[0]},今年{0[1]}岁‘.format(test))
输出:我叫全帅,今年80岁
0代表的就是第一个参数,因为参数是列表,我们需要用下标把值取出来,[数]就是下标,具体后面会有介绍,取出值传入对应的{}中;
6.通过对象传值
class Foo:
def __init__(self,name,age):
self.name=name
self.age=age
f1=Foo(‘name‘,80)
print(‘我叫{0.name},今年{0.age}岁‘.format(f1))
输出:我叫全帅,今年80岁
因为第一个参数为对象,所有直接用0.就可以调用对象的属性,传入到{}中
7.数字格式化:
^居中,<左对齐,>右对齐,后面带宽度,:号后面带填充的字符,只能是一个字符,不指定则默认是空格填充。+表示在正数前显示+,负数前显示-; (空格) 表示在正数前加空格;
b、d、o、x分别是二进制、十进制、八进制、十六进制。
我们还可以用{}来转义大括号,如:{{80}},结果为{80}
原文地址:https://www.cnblogs.com/yangli0504/p/9135659.html