У меня есть длинный список десятичных знаков, и я должен скорректировать их с коэффициентами 10, 100, 1000,..... 1000000 в зависимости от определенных условий ... Когда я их умножаю, иногда появляется бесполезный конечный нуль (хотя и не всегда), от которого я хочу избавиться. Например...
from decimal import Decimal
# outputs 25.0, PROBLEM! I would like it to output 25
print Decimal('2.5') * 10
# outputs 2567.8000, PROBLEM! I would like it to output 2567.8
print Decimal('2.5678') * 1000
Есть ли функция, которая говорит десятичному объекту отбрасывать эти незначащие нули? способ, который я могу придумать, - это преобразовать в строку и заменить их с помощью регулярных выражений.
Вероятно, следует упомянуть, что я использую python 2.6.5
РЕДАКТИРОВАТЬ Прекрасный ответ senderle заставил меня понять, что иногда я получаю число вроде 250,0, которое при нормализации дает 2,5E + 2. Я думаю, в этих случаях я мог бы попытаться отсортировать их и преобразовать в int