3 回答
MMMHUHU
TA贡献1834条经验 获得超8个赞
您需要为此使用字符串格式:
>>> for n in (9, 99, 999, 9999):
... print(f"{n:0>4}")
...
0009
0099
0999
9999
Smart猫小萌
TA贡献1911条经验 获得超7个赞
str.zfill(x)
将在任何字符串之前放置 x 个零
如果您更愿意使用字符串格式,f'{str:0x}'
也可以。
PS不要命名你的字符串str
,因为它会重载str
类
幕布斯6054654
TA贡献1876条经验 获得超7个赞
使用str.zfill(width):
zfill() 方法用零填充左侧的字符串以填充宽度。
width - 这是字符串的最终宽度。这是我们在填充零后得到的宽度。
id = [6, 77, 888, 9999]
print([str(x).zfill(4) for x in id])
输出:
['0006', '0077', '0888', '9999']
编辑:
要使用列表理解转换列中的列值:
import pandas as pd
df = pd.DataFrame({'un-padded':[6, 77, 888, 9999]})
df['padded'] = [str(x).zfill(4) for x in df['un-padded']]
print(df)
输出:
un-padded padded
0 6 0006
1 77 0077
2 888 0888
3 9999 9999
添加回答
举报
0/150
提交
取消