0
点赞
收藏
分享

微信扫一扫

python format()方法对字符串格式化处理

晚安大世界 2022-04-24 阅读 74
python

字符串format()方法的基本使用格式:

槽.format(逗号分隔的参数)

槽可以有很多,用来控制修改字符串中嵌入值出现的位置。其实就是将format()方法中逗号分隔的参数按照序号关系替换到模板字符串的槽中。槽用{}表示,如果大括号里没有序号,则按照出现顺序替换。

例如:

"{}:我学了{}小时的{}".format("2022-4-24",3,"python")

输出:'2022-4-24:我学了3小时的python'

"{2}:我学了{0}小时的{1}".format(3,"python","2022-4-24")

输出:'2022-4-24:我学了3小时的python'


format()方法的格式控制

填充对齐宽度. 精度类型
引导符号用于填充的单个字符

<左对齐

>右对齐

^居中对齐

槽的设定输出宽度

数字的千位分隔符

适用于整数和浮点数

浮点数小数部分的精度或字符串的最大输出长度

整数类型b,c,d,o,x,X

浮点数类型

e,E,f,%

宽度:指当前槽的设定输出字符宽度,如果该槽对应的format()参数长度比设定值大,则使用参数实际长度,如果该值比指定宽度小,则按位数默认以空格字符补充。

填充:指宽度内除了参数外的字符用什么方式表示,默认为空格。 

以上的六个格式标记都是可选的,可以组合使用,下面依次简绍

a = "python"
"{0:20}".format(a)#默认左对齐

输出:'python              ' 

 

a = "python"
"{0:>20}".format(a)#右对齐

输出:'              python' 

a = "python"
"{0:#^20}".format(a)#居中对齐并且使用#填充

输出:'#######python#######'

a = "python"
"{0:.format(a)#居中对齐并且使用&填充

输出:'&&&&&&&python&&&&&&&' 


格式控制标记符的逗号用于分隔千位:

a = 123456789
"{0:-^30}".format(a)

输出:

'----------123456789-----------'

a = 123456789
"{0:-^30,}".format(a)

 输出:

'---------123,456,789----------'

a = 12345.7896
"{0:-^30,}".format(a)

输出:

'---------12,345.7896----------'


精度有俩个含义:1.对于浮点数来说,精度表示小数部分输出的有效位数。2.对于字符串来说,精度表示输出的最大长度 

例如:

a = 123456.678980
"{0:.2f}".format(a)

输出:

'123456.68'

a = 123456.678980
"{0:*^30.4f}".format(a)

输出:

'*********123456.6790**********'

a = "python"
"{0:.5}".format(a)

输出:

'pytho' 


类型:对于整数类型,输出格式有六种,具体如下:

b以二进制输出
c

以Unicode字符输出

d以十进制输出
o以八进制输出
x以小写的十六进制输出
X以大写的十六进制输出

 例如:

a = 326
"{0:b},{0:c},{0:d},{0:o},{0:x},{0:X}".format(a)

输出:

'101000110,ņ,326,506,146,146'

 类型:对于浮点类型,输出格式有四种,具体如下:

e以小写e的指数形式输出
E以大写E的指数形式输出
f以标准浮点形式输出
%以浮点数的百分形式输出

 例如:

a = 3.14159
"{0:e},{0:E},{0:f},{0:%}".format(a)

输出:

'3.141590e+00,3.141590E+00,3.141590,314.159000%' 

a = 3.14159
"{0:.2e},{0:.2E},{0:.2f},{0:.2%}".format(a)

输出:

'3.14e+00,3.14E+00,3.14,314.16%' 

 

举报

相关推荐

0 条评论