📅  最后修改于: 2023-12-03 14:46:13.520000             🧑  作者: Mango
在 Python 中,我们经常需要将数字或字符串向左填充零,以达到对齐的目的。比如我们要将数字 21 转换为长度为 4 的字符串,那么它就需要向左填充一位零,变为 '0021'。
本文将介绍 Python 中实现向左填充零的几种方法。
Python 中字符串格式化的替代语法使用了类似于 C 语言中 printf 函数的占位符,比较常用的为 '%' 占位符。
使用字符串的格式化功能,我们可以轻松实现数字或字符串的向左填充零。具体实现方法如下:
n = 21
s = '%04d' % n
print(s)
# 输出:0021
s = 'abc'
s = s.rjust(5, '0')
print(s)
# 输出:00abc
以上代码中,%04d
表示格式化输出一个四位长度的数字,不足的位置用 0 填充。
s.rjust(5, '0')
表示将字符串 s
向右对齐,并在左边用 0 填充,此时字符串 s
的长度为 5。
字符串的 format()
方法也可以用来实现字符串或数字的向左填充零,使用方法如下:
n = 21
s = '{:0>4d}'.format(n)
print(s)
# 输出:0021
s = 'abc'
s = s.rjust(5, '0')
print(s)
# 输出:00abc
以上代码中,{:0>4d}
表示格式化输出一个四位长度的数字,不足的位置用 0 填充。
字符串还有一个内置的方法 zfill()
,将原字符串填充到指定长度,不足的位置用 0 填充。具体使用方法如下:
n = 21
s = str(n).zfill(4)
print(s)
# 输出:0021
s = 'abc'
s = s.zfill(5)
print(s)
# 输出:00abc
以上代码中,str(n).zfill(4)
将数字转换为字符串,并将字符串填充到 4 位长度。s.zfill(5)
将字符串 s
填充到 5 位长度,不足的位置用 0 填充。
以上是 Python 中实现向左填充零的几种方法,换句话说就是字符串或数字的对齐处理。在实际开发中,对齐处理是比较常见的需求,以上方法都可满足我们的需要,大家可以根据自己的需求选择适合的方法。