我有一个变量,我需要根据具体情况用不同的精度编写,有时我需要两个小数位,其他时间更多。
最近我一直在尝试使用string.format()方法而不是%
运算符,但我无法弄清楚如何做到这一点非常简单。
这是一个MWE:
# Some variable.
a=5.2365548
# Define two precisions.
x, y = 2, 5
# Print 'a' with different precisions.
print 'The variable equals: {:.xf}'.format(a)
print 'The variable equals: {:.yf}'.format(a)
理想情况下会在每种情况下返回:
The variable equals: 5.24
The variable equals: 5.23655
当然使用:.xf
不起作用,但我相信它会显示我需要的内容。
答案 0 :(得分:2)
>>> print '{:.{prec}f}'.format(12.345, prec=2)
12.35
>>> print '{:.{prec}f}'.format(12.345, prec=1)
12.3