![Python从入门到项目实践(超值版)](https://wfqqreader-1252317822.image.myqcloud.com/cover/265/27563265/b_27563265.jpg)
上QQ阅读APP看书,第一时间看更新
3.4 字符串格式化进阶——format
Python的字符串格式化主要有两种方式:%格式符方式和format方式。在3.3节中已经介绍了%格式符方式,那么在本节中将主要学习format()方法,通过一些实例来加深读者对format()方法的了解。
3.4.1 format()方法
![](https://epubservercos.yuewen.com/CDC5B1/15825991504141406/epubprivate/OEBPS/Images/Figure-P59_37788.jpg?sign=1739280841-OZ12syrfWZjBsg2O8CrQiJbg5nMfYBPS-0-6b792be4f7ff07938afec372efc525a8)
从Python 2.6开始,新增了一个格式化字符串的函数format(),它增强了字符串格式化的功能。
相对于前面学到的基础的格式化方法,此方法通过{}和:来代替传统%格式化方式。format()既能够用于简单的场景,也能够胜任复杂的字符串替换,而无需烦琐的字符串连接操作。Python的内置类型str和unicode均支持使用format()来格式化字符串。
接下来就详细地讨论format()的具体用法。
其格式化方法格式如下:
![](https://epubservercos.yuewen.com/CDC5B1/15825991504141406/epubprivate/OEBPS/Images/Figure-P59_78730.jpg?sign=1739280841-NCcSY5kDmPOn0bEBbLDMO17lFg207fqn-0-e5a15b673940091c1320e31ff1a313ae)
其参数含义如下。
- fill:可选项,用于填充空白处的字符。
- align:选项,定义对齐的方式。通常和参数width一起使用,其方式定义如下。
- ◆ <:采用左对齐方式。
- ◆ >:采用右对齐方式,此方式为默认采用的方式。
- ◆ =:采用右对齐,且将符号位放在填充字符的左侧,只对数字类型有效。
- ◆ ^:进行居中对齐。
- sign:可选项,决定数字符号相关。
- ◆ +:正号表示正数加正号,负数加负号。
- ◆ -:正数符号不变,负数加上负号,此方式为默认采用的方式。
- ◆ 空格:正数加空格,负数加负号。
- #:可选项,显示进制,如果对二进制、八进制、十六进制加上#,会显示0b/0o/0x,否则不显示。
- ,:可选项,用于给数字添加数学分隔符,例如40,000。
- width:可选项,格式化占有宽度。
- .precision:可选项,指定小数点要保留的精度。
- type:可选项,格式化类型符号。
3.4.2 format()方法的实例
![](https://epubservercos.yuewen.com/CDC5B1/15825991504141406/epubprivate/OEBPS/Images/Figure-P59_37794.jpg?sign=1739280841-54dJy7uKykAKr2vRHb8j0jjJPDqG5JDQ-0-cc4a9b7e676c1e9a0f7673aff2d56fa5)
format()函数采用{}和:进行格式化,实例如下。
【例3-28】填充和格式化。
![](https://epubservercos.yuewen.com/CDC5B1/15825991504141406/epubprivate/OEBPS/Images/Figure-P59_78731.jpg?sign=1739280841-wxHc66WCKTSGxkh6SaRMT8SEch5HIlb5-0-6a59107dc6d261428374d1ba7f13eeb4)
【例3-29】精度与进制。
![](https://epubservercos.yuewen.com/CDC5B1/15825991504141406/epubprivate/OEBPS/Images/Figure-P59_78732.jpg?sign=1739280841-TFR91XqnPxbUtsTRlS3lMcAyN87Efu2U-0-33183024281a9c5824be8df47a356d41)
format()允许参数位置可以自由化,通过相应的参数值来进行对应,实例如下。
【例3-30】位置对应。
![](https://epubservercos.yuewen.com/CDC5B1/15825991504141406/epubprivate/OEBPS/Images/Figure-P60_78734.jpg?sign=1739280841-7sDtDVDAIe62F6WtW9cwQ2u8EifreOrg-0-67acf6effae3508b7d7cdfe8c46584dc)