简介

我们经常需要显示带有前导零的数字。存储和显示带有前导零的数字是一个关键方面,因为它显着有助于将数字从一个数字系统准确转换为另一个数字系统。在这篇博客中,我们将看到在 Python 中显示带有前导零的数字的各种方法。

str.zfill()功能

str.zfill(width)函数用于返回给定width编号左侧自动填充零的数字字符串。如果这个width参数指定的值小于字符串的长度,则不进行填充过程。

print(str(5).zfill(2))
print(str(50).zfill(2))

上面的代码提供了以下输出。

05
50

使用rjust()函数

rjust()函数将填充添加到字符串的左侧。填充,简单来说,就是在给定字符串的左侧或右侧注入非信息性字符,它不会为初始字符串添加任何附加值。我们可以使用字符串填充来显示 Python 程序中的前导零。

rjust()函数包含两个参数:widthfillchar。在这两个中,width参数是必需的,用于指定填充过程完成后给定字符串的长度。另一方面,fillchar参数是可选的,它表示我们要填充字符串的字符。

print(str(5).rjust(2, '0'))
print(str(50).rjust(2, '0'))

上面的代码提供了以下输出。

05
50

str.format()功能

str.format()使用大括号{}来标记print语句中需要替换变量的位置。

它是在 Python 2.6 中引入的,可以在之后发布的所有 Python 版本中使用,直到 Python 3.5。这个函数在程序员中非常流行,程序员推荐这种方式来实现字符串格式化,因为它在格式化复杂字符串方面非常有效。

以下代码使用带有str.format()函数的字符串格式来显示 Python 中带有前导零的数字。

print("{:02d}".format(5))
print("{:02d}".format(50))

上面的代码提供了以下输出。

05
50

使用 % 操作符格式化字符串

实现字符串格式化的另一种方法是使用模数%符号,有时甚至称为字符串格式化或插值运算符。作为实现字符串格式化的最古老的方法,它在几乎所有当前可在 Internet 上使用的 Python 版本上都没有任何问题。

%符号和代表转换类型的字母被标记为变量的占位符。

以下代码使用带模数(%)运算符的字符串格式来显示 Python 中带有前导零的数字。

print("%02d" % (5,))
print("%02d" % (50,))

上面的代码提供了以下输出。

05
50

在上面的代码中,写在%符号后面的数字02设置要显示的文本宽度并针对前导零进行调整,d变量表示转换类型。

使用 f 字符串

随着 Python 3.6 的引入,它是 Python 中实现字符串格式化的最新方法。此外,它可以在最新版本的 Python 中使用。

它在实现字符串格式化方面比之前的其他两种方法(%运算符和str.format()函数)更有效,因为这种方法更快速且更易于理解。它还有助于以比其他两个更快的速度在 Python 中实现字符串格式化。

以下代码使用带有f-strings的字符串格式来显示 Python 中带有前导零的数字。

print(f"{5:02d}")
print(f"{50:02d}")

上面的代码提供以下输出:

05
50

在上面的程序中,字符串宽度和数据转换类型在占位符内的冒号后面指定。

结论

在使用字符串格式化来用前导零填充字符串时,专业人士更推荐使用f-strings而不是其他两种方法。它更简洁,更不容易出错,并且肯定会提高程序的可读性。

Logo

学AI,认准AI Studio!GPU算力,限时免费领,邀请好友解锁更多惊喜福利 >>>

更多推荐