Как вывести коэффициент и показатель степени отдельно друг от друга в Python? - PullRequest
1 голос
/ 07 мая 2019

Я хотел бы получить из очень большого / малого числа (например, 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 голосов
/ 08 мая 2019

Если вы конвертируете в строку, вы можете использовать split ()

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

def expon(n):
    return float(str(n).split("e")[1])
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...