#debugging #redis #lua
#отладка #redis #lua
Вопрос:
При отладке сценария Lua с использованием Redis Lua debugger я заметил, что большие числа отображаются в научной (экспоненциальной) нотации:
redis.debug(26792254717.283333)
<debug> line 1: 2.67923e 10
Можно ли как-то отключить научную нотацию при отладке на консоли?
Ответ №1:
Это фактически глобально происходит на нескольких компиляторах Lua по умолчанию.
Я нашел решение этой проблемы, с которой я тоже страдал ранее. Это не дало бы число как тип данных числового значения, а скорее как строку. Я также не уверен, где я нашел это решение, но оно у меня есть.
string.format("%.0f", 26792254717.283333) -- Will return as string
При получении его в виде числа, к сожалению, это даст ему научную ценность экспоненты. В качестве альтернативы, вы можете избавиться от этого 0
У меня также есть другое решение, которое включает в себя некоторую математику, но иногда возвращает неточные значения в диапазоне от .000001.
Редактировать: Nvm, извините, только что понял, что это также избавляет от десятичных значений. Забыл попробовать это. Я отредактирую свой пост, как только найду ответ.