如何在 Python 中格式化为 n 位小数

How to format to n decimal places in Python

我有一个变量 n,我想打印 n 个小数位。

import math
n = 5
print(f"{math.pi:.nf}")

ValueError: Format specifier missing precision

这行不通,但如何才能做到?

格式字符串中的字段 can be nested:

>>> print(f"{math.pi:.{n}f}")
3.14159

对于 3.6 之前的版本,您可以使用 .format()

print('{:.{}}'.format(math.pi, n)))