1
Python编程从入门到实践
1.7.3.4 3.3.4 format()方法的格式控制
3.3.4 format()方法的格式控制

format()方法的槽除了包括参数序号外,还可以包括格式控制信息,语法格式如下:

{<参数序号>:<格式控制标记>}

其中,格式控制标记用来控制参数显示时的格式,格式内容见表3-4。

表3-4 槽中格式控制标记的字段

格式控制标记包括<填充><对齐><宽度><,><.精度><类型>6个字段,由引导符号(:)作为引导标记,这些字段都是可选的,可以组合使用。这6个格式控制标记可以分为两组。

第一组是<填充><对齐>和<宽度>,它们是相关字段,主要用于对显示格式的规范。宽度指当前槽的设定输出字符宽度,如果该槽参数实际值比宽度设定值大,则使用参数实际长度。如果该值的实际位数小于指定宽度,则按照对齐指定方式在宽度内对齐,默认以空格字符补充。对齐字段分别使用<、>和^三个符号表示左对齐、右对齐和居中对齐。填充字段可以修改默认填充字符,填充字符只能有一个。如例3.27所示。

【例3.27】

格式控制标记可以用变量来表示,即用槽来指定所对应的控制标记及数量。如例3.28所示。

【例3.28】

第二组是<,><.精度>和<类型>,主要用于对数值本身的规范。其中,逗号(,)用于显示数字类型的千位分隔符。如例3.29所示。

【例3.29】

<.精度>由小数点(.)开头。对于浮点数,精度表示小数部分输出的有效位数;对于字符串,精度表示输出的最大长度。此时,小数点可以理解为对数值的有效截断;如果小数点保留长度超过应输出长度,以应输出长度为准。如例3.30所示。

【例3.30】

<类型>表示输出整数和浮点数类型的格式规则。

对于整数类型,输出格式包括6种。

·b:输出整数的二进制方式;

·c:输出整数对应的Unicode字符;

·d:输出整数的十进制方式;

·o:输出整数的八进制方式;

·x:输出整数的小写十六进制方式;

·X:输出整数的大写十六进制方式。

如例3.31所示。

【例3.31】

对于浮点数类型,输出格式包括如下4种。

·e:输出浮点数对应的小写字母e的指数形式;

·E:输出浮点数对应的大写字母E的指数形式;

·f:输出浮点数的标准浮点形式;

·%:输出浮点数的百分比形式。

浮点数输出时,尽量使用<.精度>表示小数部分的输出长度,如例3.32所示,有助于更好地控制输出格式。

【例3.32】

一些常用的format()方法格式控制信息如例3.33所示,建议读者掌握。

【例3.33】