3

Python 2.7 を使用している Google-App-Engine プロジェクトで、Python 3 で記述された古いコードを使用しています。Python 3 と Python 2 で異なる round() アルゴリズムが頭を悩ませています。Python 2.7 で Python 3 の round() メソッドを実装する便利な方法はありますか?

さらなる質問: Python 2 と Python 3 では、整数演算の処理がまったく異なります。たとえば、次のステートメントは Python 2 と 3 で出力が異なります。

2/4   # 0 in Python 2, 0.5 in Python 3
round(3/2)  
math.ceil(0.5)   # 1.0 in Python 2, 1 in Python 3

動作をまったく同じに保ちながら、Python 3 から Python 2 にコードを変換する簡単な方法はありますか?

ありがとう!

4

1 に答える 1

4

バンカーの丸めは将来実装されます。__future__インポートで浮動小数点分割をデフォルトにすることができます。

from __future__ import division
from future.modified_builtins import round
于 2013-08-08T00:49:14.293 に答える