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

时间:2019-05-07 20:11:57

标签: python printing exponential coefficients

我想从一个很大/一个很小的数字(例如1.324e-07)中自己获取前导系数(1.324),然后从其自身获取指数(-7),以便将其发送到我的.tex。文件为1.324 \ times 10 ^ {-7}。

我正在编写一个小的脚本来生成表,这些表将用于生成LaTeX文档。因此,我的python程序正在生成必要的值以填充表格的单元格。唯一的问题是,我宁愿将很小或很大的数字都看作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()

1 个答案:

答案 0 :(得分:0)

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

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

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