Python - 如何向整数/字符串添加零? [复制]
Posted
技术标签:
【中文标题】Python - 如何向整数/字符串添加零? [复制]【英文标题】:Python - How to add zeros to and integer/string? [duplicate] 【发布时间】:2013-02-16 08:37:38 【问题描述】:我不知道如何在 Python 中执行此操作。问题如下:例如,我有一个订单号,例如:
1
2
...
234567
我只需要提取订单号的最后 4 位,如果订单号少于 4 位,我将用零替换。
需要的输出是这样的:
0001
0002
...
4567
有什么线索吗?我对这个有点迷茫。
最好的问候,
【问题讨论】:
这个问题不是完全重复的,因为它寻找填充和切割来固定大小 【参考方案1】:试试这个:
>>> 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'
【讨论】:
太棒了!有用。 “%04d”到底是什么意思?你能解释一下魔法吗?非常感谢。 谢谢,我已经更新了答案。【参考方案2】:类似于以下内容:
>>> test = [1, 234567]
>>> for num in test:
last4 = str(num)[-4:]
print last4.zfill(4)
0001
4567
【讨论】:
以上是关于Python - 如何向整数/字符串添加零? [复制]的主要内容,如果未能解决你的问题,请参考以下文章