格式功能,编写以下代码的替代方法

时间:2018-10-23 18:02:13

标签: python

我想问一下是否还有其他方法可以编写以下代码,以及是否有人可以解释我在做什么错。

假设x,y是整数。我的目标是打印以下计算x/yx%y,它们之间的距离为10。为此,我必须考虑每次计算的时间,因此我使用len(str()),但得到ValueError: Invalid format specifier

z='{:(10+len(str(x/y)))f}{:10d}'.format(x/y,x%y)
print(z)

1 个答案:

答案 0 :(得分:3)

为什么不简单地在它们之间放置10个空格?

x = 5
y = 3
z = '{:f}{:>10}{:10d}'.format(x/y," ",x%y)

print(z)

输出:

      # 12345678901234567890
1.666667                   2

请参见format mini language

我在输出之间将一个空格正确地对齐到10个位置。默认情况下,小数也是右对齐的,并使用指定的10位。


您还可以将最高值上调10,然后使用{:20d} ...