
Python 代码阅读合集介绍:为什么不推荐Python初学者直接看项目源码
本篇阅读的代码实现了在给定数字前面填充0,至指定长度的功能。对于负数,会在符号之后填充0。
本篇阅读的代码片段来自于30-seconds-of-python。
pad_number
def pad_number(n, l):
return str(n).zfill(l)
# EXAMPLES
print(pad_number(1234, 6)) # '001234'
print(pad_number(-1234, 6)) # '-01234'
print(pad_number(+1234, 6)) # '001234'
pad_number函数接收一个数字和一个指定长度,返回将数字填充到指定长度的字符串。该字符串使用'0'在数字字符串前面填充。
函数将数字转换为字符串并使用str.zfill()函数进行填充。
str.zfill(width)返回原字符串的副本,在左边填充ASCII '0'数码使其长度变为width。 正负值前缀 ('+'/'-') 的处理方式是在正负符号之后填充而非在之前。 如果width小于等于len(s)则返回原字符串的副本。
>>> "42".zfill(5)
'00042'
>>> "-42".zfill(5)
'-0042'
>>> "+42".zfill(5)
'+0042'
在pad_number函数中'+'不再出现的原因是str(int)转化过程中,会省略'+'。
