Flask フレームワークを使用して金融 Web サイトを構築しており、現在その単体テストを作成しています。私はBabel パッケージを使用して金額をフォーマットしていますが、かなり奇妙な丸め動作に遭遇しました。の場合は切り上げが行われる5
か、少なくとも一貫性があると予想されます。しかし、これを見てください:
>>> from decimal import Decimal
>>> from babel.numbers import format_currency
>>> print format_currency(Decimal('.235'), 'EUR', locale='nl_NL')
€ 0,24
>>> print format_currency(Decimal('.245'), 'EUR', locale='nl_NL')
€ 0,24
なぜそうなのか、そしてもっと重要なことです。どうすればこれを解決できますか?
.245
ps:切り上げられることを希望します.25
[編集]
他のコードにリンクしているソースを探しに行きました。しかし、何が問題なのか、なぜランダムに切り上げたり切り下げたりしているように見えるのか、私には本当にわかりません。誰かアイデアはありますか?