Python - 如何在整数/字符串中添加零?

1 投票
2 回答
5288 浏览
提问于 2025-04-17 17:37

我对如何在Python中做到这一点没有头绪。问题是这样的:我有一些订单号,比如:

1
2
...
234567

我需要提取订单号的最后四位数字,如果订单号少于四位,我就用零来替代。

我想要的输出结果是这样的:

0001
0002
...
4567

有没有什么建议?我对此有点迷茫。

最好的祝福,

2 个回答

2

像下面这样:

>>> test = [1, 234567]
>>> for num in test:
        last4 = str(num)[-4:]
        print last4.zfill(4)

0001
4567
5

试试这个:

>>> n = 234567
>>> ("%04d"%n)[-4:]
'4567'

解释(文档):

"%04d"%n --> get a string from the (d)ecimal n, putting leading 0s to reach 4 digits (if needed)

不过这个操作会保留所有的数字:

>>> n = 7
>>> "%04d"%n
'0007'   
>>> n = 234567
>>> "%04d"%n
'234567'

所以,如果你想要最后4个数字,只需从倒数第4个位置开始取字符(也就是从右边数4个字符,具体可以参考这里关于“切片表示法”的内容):

>>> n = 234567
>>> ("%04d"%n)[-4:]
'4567'

撰写回答