format函数

  • 格式化字段将会被 format() 中的参数替换
print("我叫{},今年{}!".format("拐鸽弟弟",22))
print("我叫{0},今年{1}!".format("拐鸽弟弟",22))
print("我叫{1},今年{0}!".format("拐鸽弟弟",22))

# 执行结果
我叫拐鸽弟弟,今年22!
我叫拐鸽弟弟,今年22!
我叫22,今年拐鸽弟弟!
  • 在format()中使用关键字参数,它们的值会指向使用该名字的参数
print("我叫{name},今年{age}!".format(name="拐鸽弟弟",age=22))
print("我叫{name},今年{age}!".format(age=22,name="拐鸽弟弟"))

# 执行结果
我叫拐鸽弟弟,今年22!
我叫拐鸽弟弟,今年22!
  • 位置及关键字参数可以任意的结合
print("我叫{0},今年{1},现住{place}!".format("张三",22,place="深圳"))
print("我叫{1},现住{place},今年{1}!".format("张三",22,place="深圳"))

# 执行结果
我叫拐鸽弟弟,今年22,现住深圳!
我叫22,现住深圳,今年22!
  • format() 函数与数字,字符结合使用
^, <, > 分别是居中、左对齐、右对齐,后面带宽度,
 : 号后面带填充的字符,只能是一个字符,不指定则默认是用空格填充。

+ 表示在正数前显示 +,负数前显示 -;  (空格)表示在正数前加空格

b、d、o、x 分别是二进制、十进制、八进制、十六进制。


数字	  	格式	    	输出		描述
3.1415926	{:.2f}			3.14		保留小数点后两位
3.1415926	{:+.2f}			+3.14		带符号保留小数点后两位
-1			{:+.2f}			-1.00		带符号保留小数点后两位
2.71828		{:.0f}			3			不带小数
5			{:0>2d}			05			数字补零 (填充左边, 宽度为2)
5			{:x<4d}			5xxx		数字补x (填充右边, 宽度为4)
10			{:x<4d}			10xx		数字补x (填充右边, 宽度为4)
1000000		{:,}			1,000,000	以逗号分隔的数字格式
0.25		{:.2%}			25.00%		百分比格式
1000000000	{:.2e}			1.00e+09	指数记法
13			{:10d}	        13			右对齐 (默认, 宽度为10)
13			{:<10d}			13			左对齐 (宽度为10)
13			{:^10d}	   		13			中间对齐 (宽度为10)
11		'{:b}'.format(11)	1011
		'{:d}'.format(11)	11
		'{:o}'.format(11)	13
		'{:x}'.format(11)	b
		'{:#x}'.format(11)	0xb
		'{:#X}'.format(11)	0XB	进制

1
a = 5.5

print("a的值为{0:.0f}".format(a))

print("{0:5}---{1:<6d}".format("拐鸽弟弟",18))
print("{0:<5}---{1:6d}".format("拐鸽弟弟",18))
print("{1:5d}---{0:6}".format("拐鸽弟弟",18))

print("{0:,}".format(10000))

print("{0:.3%}".format(0.24))


# 执行结果

a的值为6

拐鸽弟弟   ---18    
拐鸽弟弟   ---    18
   18---拐鸽弟弟   
   
10,000

24.000%
Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐