当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python Pandas Series str pad方法用法及代码示例


Pandas Series.pad(~) 填充系列的每个字符串,直到达到指定的长度。

警告

如果该值不是字符串类型,则将为该值返回NaN。如果所有值都不是字符串类型,则会抛出错误。

参数

1. width | int

直至达到所需的长度。如果字符串大于指定的 width ,则该字符串将保持原样。

2. side | string | optional

要填充的字符串一侧:

说明

"left"

在左侧添加填充。

"right"

在右侧添加填充。

"both"

向两侧添加填充。

默认情况下,side="left"

3. fillchar | string | optional

要填充的字符。默认情况下,fillchar=" "(单个空格)。

返回值

Series 对象。

例子

基本用法

到 left-pad 和 "z" 直到 5 宽度:

s = pd.Series(["ab", "2", 2])
s.str.pad(width=5, fillchar="z")   # side="left"



0   zzzab
1   zzzz2
2     NaN
dtype: object

请注意整数 2 如何转换为 NaN - 这是因为它不是字符串。

指定边=双方

传递 side="both" 填充每个字符串的两端:

s = pd.Series(["ab", "2"])
s.str.pad(width=5, fillchar="z", side="both")



0   zzabz
1   zz2zz
dtype: object

在这里,请注意如何将两个 z 添加到 "ab" 的左侧,而仅将一个 z 添加到右侧。

对于不均匀的情况,未定义填充

不幸的是,没有规则规定 fillchar 总是首先添加到左侧。例如,考虑以下情况:

s = pd.Series(["A"])
s.str.pad(width=6, fillchar="z", side="both")



0    zzAzzz
dtype: object

在这种情况下,我们在右侧(而不是左侧)多了一个z

溢出时的情况

当字符串大于指定的 width 时,它将保持原样:

s = pd.Series(["abbbbb", "20000"])
s.str.pad(width=2, fillchar="z", side="both")



0   abbbbb
1    20000
dtype: object

相关用法


注:本文由纯净天空筛选整理自Isshin Inada大神的英文原创作品 Pandas Series str | pad method。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。