pandas.Series.str.zfill

Series.str.zfill(self, width)[source]

Pad strings in the Series/Index by prepending ‘0’ characters.

Strings in the Series/Index are padded with ‘0’ characters on the left of the string to reach a total string length width. Strings in the Series/Index with length greater or equal to width are unchanged.

Parameters:
width : int

Minimum length of resulting string; strings with length less than width be prepended with ‘0’ characters.

Returns:
Series/Index of objects

See also

Series.str.rjust
Fills the left side of strings with an arbitrary character.
Series.str.ljust
Fills the right side of strings with an arbitrary character.
Series.str.pad
Fills the specified sides of strings with an arbitrary character.
Series.str.center
Fills boths sides of strings with an arbitrary character.

Notes

Differs from str.zfill() which has special handling for ‘+’/’-‘ in the string.

Examples

>>> s = pd.Series(['-1', '1', '1000', 10, np.nan])
>>> s
0      -1
1       1
2    1000
3      10
4     NaN
dtype: object

Note that 10 and NaN are not strings, therefore they are converted to NaN. The minus sign in '-1' is treated as a regular character and the zero is added to the left of it (str.zfill() would have moved it to the left). 1000 remains unchanged as it is longer than width.

>>> s.str.zfill(3)
0     0-1
1     001
2    1000
3     NaN
4     NaN
dtype: object
Scroll To Top