Fra*_*Boi 6 printing floating-point formatting python-3.x
我在 Python 中有一些浮点值。我想打印它们,以便它们具有相同的位数(整数和小数部分的总和)
例如考虑两个数字:
a = 12.123456
b = 123.1234567
Run Code Online (Sandbox Code Playgroud)
我想打印它们的值,格式如下:
12.1234
123.123
Run Code Online (Sandbox Code Playgroud)
使它们具有相同的长度。
一种简单的方法如下:
if (val>100):
print("%0.3f" % val)
else:
print("%0.4f" % val)
Run Code Online (Sandbox Code Playgroud)
有没有一种更聪明的方法可以在Python中同时控制整数和小数位数,以使结果字符串恒定?
小智 6
整数和小数的格式化方法是
>>> '{:06.2f}'.format(3.141592653589793)
'003.14'
Run Code Online (Sandbox Code Playgroud)
.(此处)之前的部分6表示填充的总长度(包括) .,.(2f这里)之后的部分表示小数点后的数字。希望能帮助到你。查看链接。
好吧,我想到了这个解决方案,它基本上是正数的解决方法:
LIM = 7;
a = 12.123456
b = 123.1234567
print(str(a)[:LIM])
print(str(b)[:LIM])
Run Code Online (Sandbox Code Playgroud)