我按如下方式格式化浮点数:
logFile.write("Loadcase: %6i %2i %4i %2.2f %2.2f %4f + %4f -> " %(i, freq, amp, cutoff, end_time, penalty_inc, stab_inc))
,结果如下:
Loadcase: 5001 1 50 19.00 20.00 0.000000 + 0.000000 -> 0.495386 (ok)
Loadcase: 5002 2 50 9.50 10.00 0.000000 + 0.000000 -> 0.255045 (ok)
Loadcase: 5003 3 50 6.33 6.67 0.000000 + 0.000000 -> 0.151464 (ok)
Loadcase: 5005 5 50 3.80 4.00 0.000000 + 0.000000 -> 0.116979 (ok)
Loadcase: 5010 10 50 1.90 2.00 0.000000 + 0.000000 -> 0.081181 (ok)
我只是希望浮动对齐,并在必要时插入一些空格。我真的基本上希望桌子很好地对齐。 我对编写%2.2f的猜测似乎被忽略了。
由于技术原因,我不能使用numpy。
答案 0 :(得分:7)
你误解了%2.2f
的含义。这意味着“给浮动2列总计,并在小数点后显示2个位置”。也许你想要%5.2f
。
答案 1 :(得分:2)
语法是
% fieldwidth . precision conversiontype
因此,如果您想留一些空格,并显示2位小数,请尝试
%8.2f
有关完整概述,请参阅the Python documentation。
答案 2 :(得分:2)
格式字符串"%4.2f"
表示:格式在小数点后有2位数字,并且至少使用4个字符表示完整字符串。所以
"%4.2f" % 1.1 --> " 1.1"
"%4.2f" % 11.1 --> "11.1"
"%4.2f" % 111.1 --> "111.1"
在您的情况下,您可以将4
设置为足够高。