python - 我似乎无法在 python 中找到前面的零的正确格式规范

标签 python string formatting int

添加小数位时,就这么简单

john = 2
johnmod = format(john, '.2f')
print(johnmod)

我得到了 2.00 的返回,正如预期的那样。但是,添加前面的零的格式规范是什么?我希望输出为 0002,而我在 Google 中找到的唯一规范是使用 %04d,但它不起作用。如果重要的话,我在 Windows 上运行 Python 3.3。

最佳答案

执行此操作的几种 Pythonic 方式:

首先使用 string formatting minilanguage ,使用您尝试的方法,第一个零表示填充,4 表示宽度:

>>> format(2, "04")
'0002'

此外,格式迷你语言:

>>> '{0:04}'.format(2)
'0002'

规范在 : 之后,0 表示用零填充,4 表示宽度为四。

Python 3.6 are formatted string literals :

>>> two = 2 
>>> f'{two:04}'
'0002'

最后,str.zfill 方法是为此定制的:

>>> str(2).zfill(4)
'0002'

关于python - 我似乎无法在 python 中找到前面的零的正确格式规范,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24070878/

相关文章:

Python 检索 RUID?

C# 删除 HTML 代码并合并段落

java - 不区分大小写的字符串替换符

python - Pandas 绘图 : How to format datetimeindex?

python - 符合当今标准的 Python 字符串格式

python - 无法使用 hist() 函数对齐日期时间对象直方图中的 bin

python - 检查python中的elasticsearch连接状态

Python pymssql 尝试启动新的 Adaptive Server 操作,结果待处理

java - 使用 BufferedReader 从文件中读取 Long 和 String

VBA 日期添加格式 - 需要总分钟数