填充操作是将限定长度的字符串,用给定的字符扩充至一定长度。所以最重要的有两个元素。
-
第一是扩充的长短,也就是width,当字符串比width小时才会扩充,当字符串大于长度时,自然是返回字符串 本身。
-
第二便是扩充的位置,分三类:源字符串居左,居右和居中。
居中为center(width),这时候原来的字符串将会在中间,扩充物出现在两边。
居左为ljust(width),l为lef的缩写,源字符串在左边,填充物出现在字符串的右边。
居右为rjust(width), r为right的缩写,源字符串在右边,填充物出现在字符串的左边。
有一点需要注意的是,填充物fillchar是可选的,其默认为空格,可以更改为任意字符。
代码示例:
import string
print("test".center(10, "*"))
print("test".ljust(10, "*"))
print("test".rjust(10, "*"))
运行结果:
这里单独介绍函数zfill(width),为何着重介绍zfill函数呢?
一方面 zfill(width)函数只需要传入参数width即可,填充物为“0”,采用居右填充的方式
另外一方面该函数会识别字符串的正负,若为“+”或者“-”则不变,越过继续填充。
代码示例:
import string
# 不加"+""-"纯数字,用填充物"0"将字符串前填充满
print("12345".zfill(10))
# 加"-"纯数字,越过"-"用填充物"0"将字符串前填充满
print("-125".zfill(10))
# 加"+"数字字母组合,越过"+"用填充物"0"将字符串前填充满
print("+qwe125".zfill(10))
# 加其他符号,用填充物"0"将字符串前填充满
print("#qwe12".zfill(10))
运行结果: