Python - How to add zeros to and integer/string?
本问题已经有最佳答案,请猛点这里访问。
我对如何用Python实现这一点一无所知。问题如下:例如,我有一个订单号,比如:
1 2 3 4 | 1 2 ... 234567 |
我只需要提取订单号的最后4位数字,如果订单号少于4位,我将用零替换。
所需输出如下:
1 2 3 4 | 0001 0002 ... 4567 |
有什么线索吗?我对这个有点迷茫。
最好的问候,
试试这个:
1 2 3 | >>> n = 234567 >>> ("%04d"%n)[-4:] '4567' |
说明(文件):
1 | "%04d"%n --> get a string from the (d)ecimal n, putting leading 0s to reach 4 digits (if needed) |
但是这个操作保留了所有的数字:
1 2 3 4 5 6 | >>> n = 7 >>>"%04d"%n '0007' >>> n = 234567 >>>"%04d"%n '234567' |
因此,如果您想要最后4位数字,只需从位置-4(即从右边4个字符,在处理"切片符号"时请参见此处)中提取字符即可:
1 2 3 | >>> n = 234567 >>> ("%04d"%n)[-4:] '4567' |
如下所示:
1 2 3 4 5 6 7 | >>> test = [1, 234567] >>> for num in test: last4 = str(num)[-4:] print last4.zfill(4) 0001 4567 |