format用法相对基本格式化输出采用‘%’的方法,format()功能更强大,该函数把字符串当成一个模板,通过传入的参数进行格式化,并且使用大括号‘{}’作为特殊字符代替‘%’
使用方法由两种:b.format(a)和format(a,b)。
1、基本用法
(1)不带编号,即“{}”
(2)带数字编号,可调换顺序,即“{1}”、“{2}”
(3)带关键字,即“{a}”、“{tom}”
1>>>print('{}{}'.format('hello','world'))#不带字段 2helloworld 3>>>print('{0}{1}'.format('hello','world'))#带数字编号 4helloworld 5>>>print('{0}{1}{0}'.format('hello','world'))#打乱顺序 6helloworldhello 7>>>print('{1}{1}{0}'.format('hello','world')) 8worldworldhello 9>>>print('{a}{tom}{a}'.format(tom='hello',a='world'))#带关键字 10worldhelloworld
2、进阶用法
(1)< (默认)左对齐、> 右对齐、^ 中间对齐、= (只用于数字)在小数点后进行补齐
(2)取位数“{:4s}”、"{:.2f}"等
1>>>print('{}and{}'.format('hello','world'))#默认左对齐 2helloandworld 3>>>print('{:10s}and{:>10s}'.format('hello','world'))#取10位左对齐,取10位右对齐 4helloandworld 5>>>print('{:^10s}and{:^10s}'.format('hello','world'))#取10位中间对齐 6helloandworld 7>>>print('{}is{:.2f}'.format(1.123,1.123))#取2位小数 81.123is1.12 9>>>print('{0}is{0:>10.2f}'.format(1.123))#取2位小数,右对齐,取10位 101.123is1.12
3、多个格式化
'b' – 二进制。将数字以2为基数进行输出。
'c' – 字符。在打印之前将整数转换成对应的Unicode字符串。
'd' – 十进制整数。将数字以10为基数进行输出。
'o' – 八进制。将数字以8为基数进行输出。
'x' – 十六进制。将数字以16为基数进行输出,9以上的位数用小写字母。
'e' – 幂符号。用科学计数法打印数字。用'e'表示幂。
'g' – 一般格式。将数值以fixed-point格式输出。当数值特别大的时候,用幂形式打印。
'n' – 数字。当值为整数时和'd'相同,值为浮点数时和'g'相同。不同的是它会根据区域设置插入数字分隔符。
1>>>print('{0:b}'.format(3)) 211 3>>>print('{:c}'.format(20)) 4 5>>>print('{:d}'.format(20)) 620 7>>>print('{:o}'.format(20)) 824 9>>>print('{:x}'.format(20)) 1014 11>>>print('{:e}'.format(20)) 122.000000e+01 13>>>print('{:g}'.format(20.1)) 1420.1 15>>>print('{:f}'.format(20)) 1620.000000 17>>>print('{:n}'.format(20)) 1820 19>>>print('{:%}'.format(20)) 202000.000000% 21>>>原文来自:https://www.py.cn
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END
暂无评论内容