Avg
の集計を使用する場合models.DecimalField
、戻り値は。float
ではなく、decimal.Decimal
です。これは、私の特定のデータベース(この場合はsqlite3)が小数としての集計値をサポートしていないためですか?もしそうなら、そうするデータベースはありますか?これを回避する方法(つまり、値を10進数として戻す方法)があります。これにより、正確な10進数の計算を実行できます(また、をaに変換してfloat
から、str
に戻すこともありdecimal.Decimal
ません)。
注:私は、「十分に正確」は「正確」と同じであると信じている人々との戦い、または誤ったフロートベースの算術によるStarShipEnterpriseのクラッシュについての議論のための炎の餌付けをしていません。