如何在格式化字符串或f字符串中使用变量替换进行数字填充?

4

我想要根据变量width的值来对数字i进行填充。

>>> width = 5
>>> i = 1
>>> print(f'{i:width}')
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ValueError: Invalid format specifier
>>>
>>> print('{:width}'.format(i))
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ValueError: Invalid format specifier

期望输出:

1

参数化格式化字符串 - Tomerikoo
@Tomerikoo,你知道有没有更新的版本涵盖了f-strings吗? - Karl Knechtel
@KarlKnechtel 没有特别指明,但我认为它大部分都涵盖了(假设您对语法有一些基本的理解)。无论如何,显然可以通过 GitHub 贡献到该网站 https://github.com/ulope/pyformat.info - Tomerikoo
1个回答

3
你差点就成功了:
>>> width = 5
>>> i = 1
>>> print(f'{i:{width}}')
    1

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接