有没有办法设置Python的默认浮点表示法;{:5.3e}";。如果a=None且不是浮点,格式(a)?

有没有办法设置Python的默认浮点表示法;{:5.3e}";。如果a=None且不是浮点,格式(a)?,python,string-formatting,Python,String Formatting,有没有一种简单的方法可以为Python的format命令设置默认浮点表示: "{:5.3e}".format(a) 因此,如果变量a的值是None而不是float,那么可能会打印一些默认值,比如5个空格 格式字符串可以包含许多字段,由用户指定。 a中的值是内部计算的。我建议如下 print("{:.3e}".format(a)) if a else print(" "*5). 你不需要5.3e,因为在科学记数法中,你总是因为.3e而得到5位数字。除了要将整个文本向右移动。然后您可以使用{:

有没有一种简单的方法可以为Python的format命令设置默认浮点表示:

"{:5.3e}".format(a) 
因此,如果变量a的值是None而不是float,那么可能会打印一些默认值,比如5个空格

格式字符串可以包含许多字段,由用户指定。
a中的值是内部计算的。

我建议如下

print("{:.3e}".format(a)) if a else print(" "*5).

你不需要
5.3e
,因为在科学记数法中,你总是因为.3e而得到5位数字。除了要将整个文本向右移动。然后您可以使用
{:>10.3e}

您可以编写一个执行此测试的自定义格式化程序,请参见例如。