Как выводить числа, которые выводятся в экспоненциальной записи, в нормальном (десятичном) виде?
Почему так числа отображаются: 7e-06 3e-06 4e-06?
Как сделать вывод привычным, чтобы было удобней читать?
Если с большими значениями: 0.7 0.3 0.4,0.07 0.03 0.04, 0.0007 0.0003 0.0004, то всё нормально, но со стотысячными долями: 7e-06 3e-06 4e-06.
a = 0.000003
b = 0.000004
c = a + b
if a < b:
print(c, a, b)
else:
print(a)
Ответы (1 шт):
Автор решения: MaxU
→ Ссылка
Воспользуйтесь форматированием строк. Еще удобнее воспользоваться f-string, который стал доступен начиная с Python 3.6.
исходный вариант - форматирование по умолчанию:
In [52]: print(a, b, c)
3e-06 4e-06 7e-06
используем форматирование строк:
In [54]: print("{:.8f}, {:.8f}, {:.8f}".format(a,b,c))
0.00000300, 0.00000400, 0.00000700
используем f-string форматирование (обратите внимание на букву f перед началом строкового литерала: f"<string_literal>"):
In [53]: print(f"{a:.8f}, {b:.8f}, {c:.8f}")
0.00000300, 0.00000400, 0.00000700