如何在 python 中打印系数和指数?

How to print coefficient and exponent separate from each other in python?

我想从一个非常 large/small 的数字(例如 1.324e-07)中单独获取前导系数 (1.324),然后单独获取指数 (-7),以便我可以发送它们我的 .tex 文件为 1.324 \times 10^{-7}.

我正在编写一个小脚本来生成我将用于生成 LaTeX 文档的 tables。因此,我的 python 程序正在生成必要的值来填充 table 的单元格。唯一的问题是,我更愿意将非常小或非常大的数字视为 C *10^n 而不是 Cen---例如,1.324x10^-7 而不是 1.324e-07。这意味着我需要转换我的 python 输出。非常感谢任何帮助。

这是我的 MWE。


mu = 1.324e-7
nu = 4.259e-5
Pr = 0.7117

f = open("my-doc.tex", "a+")
f.write("%0.3e\n" %(mu))
f.write("%0.3e\n" %(nu))
f.write("%0.4f" %(Pr))
f.close()

我更喜欢...


mu = 1.324e-7
nu = 4.259e-5
Pr = 0.7117

f = open("my-doc.tex", "a+")
f.write("%0.3f \times 10^{%d}\n" % (coef(mu), expon(mu)))
f.write("%0.3f \times 10^{%d}\n" % (coef(nu), expon(nu)))
f.write("%0.4f" % (Pr))
f.close()

如果转换为字符串,可以使用 split()

def coef(n):
    return float(str(n).split("e")[0])

def expon(n):
    return float(str(n).split("e")[1])