Python float到string,精度为variab

2024-06-01 04:38:12 发布

您现在位置:Python中文网/ 问答频道 /正文

我想把a = 1.1234567这样的浮点数转换成字符串,把精度作为第二个变量(这就是为什么这不是“带f字符串的小数点后的固定数字”的重复):

def float2str(val, precision):
    ...

float2str(1.1234567, 3)  # '1.123'
float2str(1.1234567, 5)  # '1.12346' (mind correct rounding)

我知道f字符串可以使用f'{a:.5f}'进行正确的舍入,但是精度必须是字符串的一部分。你知道吗

我想出了一个非常丑陋的解决方案,希望有人能给我指出一个更优雅的方法:

f'%.{precision}f' % a

Tags: 方法字符串def精度数字val解决方案precision