始终打印] -100之间的随机值; 100 [前2位数,点后2位数,python 3

时间:2018-05-31 17:13:53

标签: python formatting format

我在-100之间有浮点数; 100 [(100不包括)作为我的代码中的输入(包含400多行,这就是为什么我尽可能地简化我的问题)。

然后我使用.format()在字符串中间打印其中一个数字。

我已经找到了如何单独制作它,但只能使用整数表示前导零,例如:

number1 = 1 number2 =1.1 print('{:02d}'.format(number1)) print('{:.2f}'.format(number2))

会回复我:

01 1.10

现在我希望将number2这样的数字打印为01.10。有没有办法这样做?

我希望我已经清楚了,并提前感谢你的答案!

2 个答案:

答案 0 :(得分:2)

使用零填充数字

print('{: 06.2f}'.format(-99.3))

说明:填充值6是整数的长度,包括。和签名,:后面的空格表示应该为正数使用额外的空格(参见the docs

答案 1 :(得分:0)

对于Python3.6 +,您可以使用literal string interpolation。然后,您可以使用标准format specification来提供精确度和左侧填充。

num = -1.123
print(f'Formatted number: {num: 06.2f}')
# prints: 'Formatted number: -01.12'

num = 6.789
print(f'Formatted number: {num: 06.2f}')
# prints: 'Formatted number: 06.79'

括号内:

  • 'num'是要格式化的变量。

  • ' 06'表示输出的宽度为6,左侧填充0,但该正数用空格填充而不是额外的{{1} }}

  • 0表示您想要一个'.2f'精确定位的浮动。