2

整数に丸めたい浮動小数点数がありますが、常に切り上げます (「上」は大きさが大きいことを意味します)。

たとえば、4.2 は 5 に丸められ、-4.2 は -5.0 に丸められます。

Pythonに組み込まれているこれを行う良い方法はありますか? そうでない場合、この操作を実行する最も効率的な方法として何をお勧めしますか?

もともと私はちょうど を使用していましたが、5 を与えるのに -4を与えるmath.ceil()ことに気付くまで、これは私が望むものではありませんでした。math.ceil(4.2)math.ceil(-4.2)

これを回避する1つの方法はceil、正の数とfloor負の数に使用することですが、コードはどこでもインラインifステートメントで非常に粗雑に見え始めます(私はこの操作を複数の場所で使用しています)

もう1つの可能性math.copysign( math.ceil( abs( x ) ), x )は、少し過剰に見えるようなものかもしれません

4

2 に答える 2