2016-01-21 79 views
1

我正在使用PYTHON写入格式非常严格的文件。我在这无法超过每列10米可用的空间。花车的严格Python格式化

我想写尽可能多的小数位,因为我可以,但如果数字为负,减号一定是首选,在过去小数。此外,浮动周期必须计入可用空间的数量。数字应该是正确的trunctated

例子: 比方说,我想打印两个数字

a = 123.4567891011 
b = 0.

然后我想要的结果:

123.4567890.98765432 

但如果我现在有以下几点:

a = -123.1111111111 
b = 98765.4321
c = 567 
d = 0.1234 

然后我想:

-123.1111198765.4321  567.0 0.1234 

会很好地使用指数表示法来处理高数字,但不是必需的。我无法找到答案。我所能找到的只是将格式修改为有效数字的数字,这对我来说真的不起作用。

我试过的

f.write({0:>10}{1:>10}.format(a,b)) 

几种方法,但不能弄明白。希望你看到我渴望的东西。

+0

参见[pyformat.info(https://pyformat.info/),尤其是[填充数(HTTPS: //pyformat.info/#number_padding)。 –

回答

0

好了,所以我找到了一种方法。我基本上都转换为字符串和使用:

f.write("{0:>10.10}{1:>10.10}".format(str(a),str(b))) 

等..