
>字段宽度为8个字符
>浮点数必须包含’.’或以指数格式书写,例如’1.23e8′
我最接近的是
print "{0:8.3g}".format(number) 产生’1.23e 06’与1234567,和’1234’与1234.
我想调整一下,得到
>’1234567.’使用1234567(即在它之前不会采用指数格式)
需要),
>’1234.’ 1234(即以点结尾,因此不会被解释为整数),
>’1.235e 7’与12345678(即指数仅使用一位数),
>’ – 1.23e 7′,带-1234567(即未违反8位数最大值
负数).
由于这是(据我记得)很容易用Fortran实现的,问题可能偶尔出现,当与遗留代码交互时,我怀疑必须有一些简单的方法来做到这一点?
解决方法 你已经非常接近,但我认为你的最终解决方案将涉及编写自定义格式化程序.例如,我不相信 mini-formatting language可以像你想要的那样控制指数的宽度.(顺便说一句,在你的第一个例子中,你没有在“e”之后有一个“”,而是在你做的其他人之后.明确你想要哪一个可以帮助其他的回答者.)
如果我正在编写这种格式化函数,我要做的第一件事就是为它编写一套完整的测试. doctest或unittest都适用.
然后,您将处理格式化功能,直到所有这些测试通过.
总结以上是内存溢出为你收集整理的如何在Python中将浮点数格式化为最大固定宽度全部内容,希望文章能够帮你解决如何在Python中将浮点数格式化为最大固定宽度所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)