如何在python中强制使用前导点打印指数数字?

我试图在
python中打印指数数字,但我需要我的数字以点开头.就像是 :

>>>print( "{:+???}".format(1.2345678) )
+.1234e+01

最佳答案 如果你将你的数字乘以10并用科学记数法格式化数字,你将得到正确的指数,但昏迷将被放错地方.幸运的是,你知道标志只有一个字符,而昏迷前只有一个数字.所以你可以做到

def format_exponential_with_leading_dot(n):
    a = "{:+e}".format(n * 10)
    return a[0] + '.' + a[1] + a[3:]


>>> print format_exponential_with_leading_dot(1.2345678)
+.1234568e+01
点赞