Python格式化输出
格式化输出最常用的是format方法和占位符输出的方法
format方法
下面是使用format方法格式化输出字符串
print('{}{}{}'.format('小明','小红','小蓝'))
小明小红小蓝
下面是使用format方法格式化输出数字
#对于整数
print('{}'.format(2))
2
#对于小数 输出时只输出前n位小数位,不够时补0 冒号的作用就是让后面的部分生效
print('{:.2f}'.format(2))
print('{:.2f}'.format(2.344))
print('{:.2f}'.format(2.355))
2.00
2.34
2.35
有时候需要对多个括号赋值
print('{a:.2f},{b:.2f},{c:.2f}'.format(b = 2,c = 1,a = 0))
0.00,2.00,1.00
这里赋值要注意若前面大括号没有变量名,则后面也不需要,只要括号与数字一一对应即可,若前面大括号有变量名,则后面也需要标出变量名。
print('{:.2f},{:.2f},{:.2f}'.format(2,1,0))
2.00,1.00,0.00
在使用format方法进行格式化输出大量数字时可能会有位数要求,还可以使用以下方法
print('{:-<10}'.format(12.3))
print('{:*<10}'.format(12.3))
12.3------
12.3******
10表示输出的字符的长度,小数点也算一个长度, { : − < 10 } \{:-<10\} {:−<10}的意思就是输出的数字长度为10,若不足10则用-代替,也可以用0或者空格代替不够的位数
print('{:0<10}'.format(12.3))
12.3000000
print('{:<10}'.format(12.3))
12.3
输出的字符默认左对齐,若要求右对齐使用下面的方法
print('{:0>10}'.format(12.3))
print('{:>10}'.format(12.3))
00000012.3
12.3
若使用居中对齐,使用下面的方法
print('{:-^10}'.format(12.3))
---12.3---
若format后面的是一个str、list或者tuple时使用下面的方法进行格式化输出
print('{0[0]}{0[1]}{0[2]}'.format(('小明','小红','小蓝')))
print('{0[0]}{0[1]}{0[2]}'.format(['小明','小红','小蓝']))
print('{0[0]}{1[1]}{2[1]}'.format('小明','小红','小蓝'))
小明小红小蓝
小明小红小蓝
小红蓝
{ 0 [ 0 ] } \{0[0]\} {0[0]}中第一个0表示format方法括号内的是一个整体,是format匹配的第0个索引,第二个0表示是str、list或者tuple中的第0个元素
下面是使用占位符方式进行格式化输出
首先明确使用占位符输出时,%s表示字符串输出,%d表示整数输出,%f表示浮点数输出
整数占位符输出
print('%d,%d,%d'%(1,2,3))
1,2,3
字符串占位符输出
print('%s,%s,%s'%('apple','banana','strawberry'))
apple,banana,strawberry
浮点数占位符输出
print('%f,%f,%f'%(1,2,3))
1.000000,2.000000,3.000000
使用占位符输出浮点数时默认输出6位小数,有特别需要可以指定输出的小数位数
print('%.2f'%3.445)
3.44
特别注意python3.7.3中,使用%.nf输出浮点数会进行五舍六入
print('%.2f'%3.446)
3.45