Python格式化输出
Python格式化输出教程
在 Python 中,print() 函数用于打印相应的信息到终端控制台,同时我们还可以通过 print() 函数的 %
占位符,来对输出进行格式化,即按照我们指定的格式进行输出。
Python格式化输出占位符
占位符 | 说明 |
---|---|
%d,%i | 转换为带符号的十进制形式的整数 |
%o | 转换为带符号的八进制形式的整数 |
%x,%X | 转换为带符号的十六进制形式的整数 |
%e | 转化为科学计数法表示的浮点数(e 小写) |
%E | 转化为科学计数法表示的浮点数(E 大写) |
%f,%F | 转化为十进制形式的浮点数 |
%g | 智能选择使用 %f 或 %e 格式 |
%G | 智能选择使用 %F 或 %E 格式 |
%c | 格式化字符及其 ASCII 码 |
%r | 使用 repr() 将变量或表达式转换为字符串 |
%s | 使用 str() 将变量或表达式转换为字符串 |
案例
格式化字符串
使用 print() 函数,格式化 字符串 进行输出
print("嗨客网(www.haicoder.net)")
# 使用 print 函数,进行格式化字符串输出
site = 'HaiCoder'
print('I am study python in %s' % site)
程序运行后,控制台输出如下:
我们使用 print() 函数,格式化输出字符串。其中 %s
表示后面我们要替换的是一个字符串类型的 变量,在变量与占位符之间需要加一个 %
。
格式化多个变量
使用 print() 函数,一次可以同时格式化多个变量
print("嗨客网(www.haicoder.net)")
# 使用 print 函数,进行格式化字符串输出
site = 'HaiCoder'
print('%s has %d years old' %(site, 18))
程序运行后,控制台输出如下:
我们使用 print() 函数,同时格式化了两个变量,一个是字符串类型,一个是 整型。同时格式化多个变量时,被格式化的变量需要使用 ()
,并且在 ()
里面多个变量使用 ,
分割。
格式化浮点数
使用 print() 函数,可以格式化浮点数,指定浮点数的小数位数
print("嗨客网(www.haicoder.net)")
# 使用 print 函数,格式化浮点数
score = 99.85
print('score = %f' % score)
print('score = %.1f' % score)
程序运行后,控制台输出如下:
我们使用 print() 函数,格式化 浮点数 输出,第一个没有指定输出的小数位数,第二个我们通过 %.Nf
的形式,指定输出的小数为 N 位。
格式化书输出宽度
使用 print() 函数,可以格式化整数输出的宽度
print("嗨客网(www.haicoder.net)")
# 使用 print 函数,格式化整数的宽度
num = 100241
num2 = 1024
print('score = %6d' % num)
print('score = %5d' % num)
print('score = %6d' % num2)
print('score = %-6d' % num2)
print('score = %06d' % num2)
程序运行后,控制台输出如下:
我们使用 print() 函数,通过 %Nd
的形式,可以格式化输出整数的宽度,%Nd
的形式默认是右对齐,我们可以使用 %-Nd
的形式,指定使用左对齐的形式。
第一个 print() 函数,输出变量 num,并指定宽度为 6,此时变量 num 正好是六位,因此正好完整输出变量 num,第二个 print() 函数,输出变量 num,并指定宽度为 5,此时变量 num 是六位,没有被截取,还是完整输出变量 num。
第三个 print() 函数,输出变量 num2,并指定宽度为 6,因为变量 num2 只有四位,因此前面多了两个空格,并且默认是右对齐。
第四个 print() 函数,输出变量 num2,并指定宽度为 6,因为变量 num2 只有四位,因此前面多了两个空格,同时,我们使用了 %-Nd
的形式, 让输出左对齐。
第五个 print() 函数,输出变量 num2,并指定宽度为 6,并指定位数不够使用 0 填充,因为变量 num2 只有四位,因此前面多了两个 0。
Python格式化输出总结
在 Python 中,print() 函数用于打印相应的信息到终端控制台,同时我们还可以通过 print() 函数的 %
占位符,来对输出进行格式化,即按照我们指定的格式进行输出。