我想问一下是否还有其他方法可以编写以下代码,以及是否有人可以解释我在做什么错。
假设x,y
是整数。我的目标是打印以下计算x/y
和x%y
,它们之间的距离为10。为此,我必须考虑每次计算的时间,因此我使用len(str())
,但得到ValueError: Invalid format specifier
z='{:(10+len(str(x/y)))f}{:10d}'.format(x/y,x%y)
print(z)
答案 0 :(得分:3)
为什么不简单地在它们之间放置10个空格?
x = 5
y = 3
z = '{:f}{:>10}{:10d}'.format(x/y," ",x%y)
print(z)
输出:
# 12345678901234567890
1.666667 2
我在输出之间将一个空格正确地对齐到10个位置。默认情况下,小数也是右对齐的,并使用指定的10位。
您还可以将最高值上调10,然后使用{:20d}
...