我没有关于如何在Python中执行此操作的线索。问题如下:例如,我有一个订单号:
1
2
...
234567
我只需要提取订单号的最后4位数字,如果订单号少于4位,我将用零替换。
所需的输出如下:
0001
0002
...
4567
任何线索?我对这个有点失落。
最诚挚的问候,
答案 0 :(得分:4)
试试这个:
>>> n = 234567
>>> ("%04d"%n)[-4:]
'4567'
解释(docs):
"%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个字符,处理'切片表示法时见here):
>>> n = 234567
>>> ("%04d"%n)[-4:]
'4567'
答案 1 :(得分:1)
如下所示:
>>> test = [1, 234567]
>>> for num in test:
last4 = str(num)[-4:]
print last4.zfill(4)
0001
4567