Decimals の長いリストがあり、特定の条件に応じて 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
これらの意味のないゼロを削除するように decimal オブジェクトに指示する関数はありますか? これを行う唯一の方法は、文字列に変換し、正規表現を使用してそれらを置き換えることです。
おそらく、私はpython 2.6.5を使用していることに言及する必要があります
編集センダールの素晴らしい答えにより、正規化すると2.5E + 2を生成する250.0のような数値が時々得られることに気付きました。これらの場合、それらを整理してintに変換しようとすることができると思います