Можно ли отформатировать числовое значение в качестве научной нотации и при этом сохранить его формат, например, как float (а не как str
)
Если я это сделаю:
n = 5482.52291
type(n)
Out[115]: float
Тогда, если я отформатирую n
:
print(format(n, "10.2E"))
5.48E+03
Что я и хочу, хотя это строковый тип:
type(format(n, "10.2E"))
Out[118]: str
Я также попробовал np.format_float_scientific , но сама строка документа уже говорит, что она возвращает строку и делает
float(np.format_float_scientific(n, precision=2))
вернет 5480.0
В конце концов, я пытаюсь создать базу данных MySQL из кадров данных pandas. В некоторых столбцах есть наблюдения с большим числом (миллиарды), так что лучше всего визуализировать их с научной нотацией. Тем не менее, в какой-то момент может потребоваться экспортировать таблицу из базы данных SQL и выполнить (базовые) математические операции с этими наблюдениями в этих столбцах, что не будет работать для типа str
.