python - 如何将字符串格式化为存储在变量中的固定长度?

标签 python python-3.x string-formatting

我有一个数字,我想将其格式化为具有零填充和特定长度的字符串。假设如果固定长度是 22 ,我知道我可以这样做

 format(variable,"%022d")

但是有没有什么办法可以做到这一点

length = 22
format(variable,"%0lengthd")

这意味着我需要在% variable d表达式中使用变量

谢谢

最佳答案

你应该使用 str(variable).zfill(length)为此:

>>> str(12345).zfill(8)
'00012345'
>>> str(12345).zfill(10)
'0000012345'

在零填充之前必须将数字转换为字符串似乎有些不直观,但是(至少在我看来)这比使用多种格式要干净得多。毕竟,当解决方案已经内置时,为什么还要拼凑一个解决方案?

关于python - 如何将字符串格式化为存储在变量中的固定长度?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18797753/

相关文章:

python - 将字母表中的字母分配给列表中的每个值

python - Google Maps API -地址到坐标(纬度,经度)

python:如果它只有常量,那么实例化一个类与引用相比有什么缺点吗?

Python SQL 查询字符串格式化

python - 使用 format() 舍入、对齐和打印浮点列表

python - Django-Filer 规范 URL 无法正常工作(找不到页面)

python - 文件流 - ValueError : embedded null byte

python - 按列名称选择文本文件中的特定列并提取其内容

python-3.x - 如何在它们之间添加小时和分钟

Lua string.format ("%d") 对某些整数失败