:02d 在 Python 中是啥意思
Posted
技术标签:
【中文标题】:02d 在 Python 中是啥意思【英文标题】:what does :02d mean in Python:02d 在 Python 中是什么意思 【发布时间】:2016-08-01 07:50:08 【问题描述】:在网上很难找到关于:
的信息
我在下面看到了一些代码:
def dateformat(date):
day, month, year=date.split('/')
return ":4d:02d:02d".format(int(year),int(month),int(day))
我有点知道它在格式中填充了前导 0
,但我不知道 :02d
中的 '02'
和 'd'
是做什么的?
【问题讨论】:
您正在寻找str.format()
documentation。
查看pyformat.info 以获取有关格式字符串的文档。可能还有很多其他资源。
回复::
,如果没有格式化,就不需要冒号了,如'hello '.format("world")
您可以在这本食谱中了解有关 Python 字符串格式化的所有内容 - mkaz.tech/python-string-format.html
【参考方案1】:
您正在寻找str.format()
documentation。具体来说,02d
部分记录在 Format Specification Mini-Language 中。
02d
将整数 (d
) 格式化为最小宽度为 2 (2
) 的字段,左侧填充零(前导 0
):
>>> 'No digits: :02d, 1 digit: :02d, 2: :02d, 3: :02d'.format(0, 7, 42, 151)
'No digits: 00, 1 digit: 07, 2: 42, 3: 151'
来自文档:
format_spec ::= [[fill]align][sign][#][0][width][,][.precision][type]
[...]
width 是定义最小字段宽度的十进制整数。
当没有给出明确的对齐方式时,在 width 字段前面加上一个零 (
'0'
) 字符可以为数字类型启用符号感知零填充。这相当于'0'
的填充字符,对齐类型为'='
。[...]
最后,类型决定了数据应该如何呈现。 [...] 可用的整数表示类型有:
[...]
'd'
十进制整数。输出以 10 为底的数字。
【讨论】:
假设我有一个数字“2014”,我希望它的右填充三个 0 为“2014000”,我该如何使用 :? @lxdthriller:使用0<7d
,因此左在至少7个字符宽度的字段中对齐并用零填充。【参考方案2】:
至于您的信息:
format(1, '02')
'01'
format(100, '02')
'100'
':02'.format(1)
'01'
':02'.format(100)
'100'
但是,:02d 中的 d 表示以 10 为底的数字
【讨论】:
以上是关于:02d 在 Python 中是啥意思的主要内容,如果未能解决你的问题,请参考以下文章
'except Exception as e'在python中是啥意思? [关闭]
这些花括号在 python Django 中是啥意思? **