python - 从字典格式化替换

标签 python string dictionary formatting

我使用字典来格式化字符串:

print '%(duration)s' % {'duration':'898'}

一切都按预期进行。现在我想确保 %(duration) 的替换将在左侧用零填充,因此它有 5 位数字。结果应如下所示:''00898'' 保证持续时间永远不会超过 5 位数。

'%(duration)s' 会是什么样子?

最佳答案

我更愿意使用 str.format这里。示例 -

In [46]: "{duration:0>5}".format(duration='898')
Out[46]: '00898'

如果你想使用字典,你可以将字典解压到 .format 的参数中。示例 -

In [48]: "{duration:0>5}".format(**{'duration':'898'})
Out[48]: '00898'

这里的主要部分是 - {duration:0>5} - 这里的字段名称在 : 之前,0>: 之后表示通过填充 0 进行右对齐,5 表示右对齐的空格量。

您可以找到有关 string format syntax here 的更多信息.

关于python - 从字典格式化替换,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32779086/

相关文章:

"fuzzy matching"字符串的算法

javascript - 转义序列化字符串中的#符号

python - python 中的交错字符串

python - 从类中调用函数的python字典

ios - 无法使用 '[NSObject : AnyObject]' 类型的索引为 'String' 类型的值添加下标

python - 在图像上滑动窗口 OpenCV

python - pypi信息显示在错误的地方

python - 网站抓取

python - 无法在 python 中导入自定义 DLL

java - 在 java 中使用 HashMap 的主要好处是什么?