欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

python 格式化输出%和format

程序员文章站 2022-07-15 08:17:05
...

1、Python中内置的%操作符可用于格式化字符串操作

1.1、整数的输出

%o —— oct 八进制
%d —— dec 十进制
%x —— hex 十六进制
1.2、小数输出

%f ——保留小数点后面六位有效数字
  %.3f,保留3位小数位
%e ——保留小数点后面六位有效数字,指数形式输出
  %.3e,保留3位小数位,使用科学计数法
%g ——在保证六位有效数字的前提下,使用小数方式,否则使用科学计数法
  %.3g,保留3位有效数字,使用小数或科学计数法
1.3、字符串输出

%s
%10s——右对齐,占位符10位
%-10s——左对齐,占位符10位
%.2s——截取2位字符串
%10.2s——10位占位符,截取两位字符串

%% 即代表%
%d —整数(int)
%f —小数(float)
%s —字符串(str)

(1)%举例

a1 = '123'
a2 = 1
a3 = 1.345
a = "这是字符串%s,这是整数%d,这是小数%f"%(a1,a2,a3) 
print(a)

结果:

这是字符串123,这是整数1,这是小数1.345000

(2)控制小数输出的位数

同理控制字符串输出的位数则是%.2s 即输出两个字符串

a = 1.3456
print('%.2f'%a)   # %.2f  小数点加数字2控制输出的位数
b = '%.2f'%a
print(b)    
print(type(b))

结果:

1.35
1.35
<class 'str'>

2、format函数

相对基本格式化输出采用‘%’的方法,format()功能更强大,该函数把字符串当成一个模板,通过传入的参数进行格式化,并且使用大括号‘{}’作为特殊字符代替‘%

位置匹配
(1)不带编号,即“{}”
(2)带数字编号,可调换顺序,即“{1}”、“{2}”
(3)带关键字,即“{a}”、“{tom}”

a = '{}{}{}'.format(1,2,3)
print(a)
b = '{1:.1f}{0}'.format(1.234,2)  # :.1f按小数输出索引为1的值且小数位为1位
print(b)   # 带编号相当于按索引输出
c = '{e}{f}'.format(f=1,e=2)
print(c)   # 带变量名输出

结果:

123
2.01.234
21