我需要有一个十进制数格式与一个确切的数字,计数两位数字的左边和右边的小数点。
5位数示例:
- 1.0000(左1位+右4位)
- 10.000(左2位+右3位)
- 100.00(左3位数+右2位数)
- 1000.0(左4位+右1位)
我可以定义一个固定数量的小数点,
'{:.4f}'.format(my_num)
字符串
或者用f字符串表示法
f'{my_num:.4f}'
型
但这不是我想要的,我不想要固定的小数点,我想要固定的总位数,或者如果你喜欢,数字具有相同的字符串长度)
我可以计算出小数点的个数
n_decimals = 5 - len(str(int(my_num)))
型
但是我不知道如何指定变量的位数
f'{my_num:.{n_decimals }f}' # doesn't work
f'{:.{my_num}f}'.format(my_num) # doesn't work either
型
此外,必须通过转换为int,然后是string,然后计算长度来计算小数点的数量是很麻烦的。
有没有办法做到这一点?
1条答案
按热度按时间xzlaal3s1#
你能把输出切成薄片吗?
字符串