Python如何实现format函数的嵌套高效格式化?

2026-06-10 01:340阅读0评论SEO教程
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计418个文字,预计阅读时间需要2分钟。

Python如何实现format函数的嵌套高效格式化?

项目来源:近期使用ArcGIS结合Python进行批量处理的事件,其中一项场景是依据数据用户指定的宽度,格式化输出数字,不足的部分补零。例如,用户输入为3,则输出为001、002、003……099。


项目由来

最近在用ArcGIS结合Python做一些批量处理的事情,其中一个场景就是根据用户指定的宽度,格式化输出数字,不足的部分补零,例如用户输入为3,则为001、002、003、......099。

之前我们说过这类格式化的写法,{:03d}。但是现在有一个问题,就是这里面的3是用户输入的,所以需要一个format,然后格式化数字,还需要一个format,这就是嵌套的问题。

之前时间紧,就没去查怎么format嵌套的写法,用了一个比较笨的方法,先把格式化写好,然后再格式化数字。

width = input()

for i in range(100):
style = ':0{}d'.format(width)
style = '{' + style + '}'
print(style.format(i))

format嵌套格式化

format嵌套格式化其实也很简单,在花括号外层再嵌套两个花括号即可。

width = input()

for i in range(100):
print('{{:0{}d}}'.format(width).format(i))

我再输出一下中间过程数据,你就明白了。

阅读全文

本文共计418个文字,预计阅读时间需要2分钟。

Python如何实现format函数的嵌套高效格式化?

项目来源:近期使用ArcGIS结合Python进行批量处理的事件,其中一项场景是依据数据用户指定的宽度,格式化输出数字,不足的部分补零。例如,用户输入为3,则输出为001、002、003……099。


项目由来

最近在用ArcGIS结合Python做一些批量处理的事情,其中一个场景就是根据用户指定的宽度,格式化输出数字,不足的部分补零,例如用户输入为3,则为001、002、003、......099。

之前我们说过这类格式化的写法,{:03d}。但是现在有一个问题,就是这里面的3是用户输入的,所以需要一个format,然后格式化数字,还需要一个format,这就是嵌套的问题。

之前时间紧,就没去查怎么format嵌套的写法,用了一个比较笨的方法,先把格式化写好,然后再格式化数字。

width = input()

for i in range(100):
style = ':0{}d'.format(width)
style = '{' + style + '}'
print(style.format(i))

format嵌套格式化

format嵌套格式化其实也很简单,在花括号外层再嵌套两个花括号即可。

width = input()

for i in range(100):
print('{{:0{}d}}'.format(width).format(i))

我再输出一下中间过程数据,你就明白了。

阅读全文