2011-02-10 8 views
3

Pythonのドキュメントhereによれば、型を出るとき、浮動小数点引数の型はデフォルトで 'g'の型になります。しかしstr.format()の振る舞いに型がない

print("{0:.2}".format(14.9)) 

版画 "1.5E + 01" があり、

print("{0:.2g}".format(14.9)) 

版画 "15" は

は、ドキュメントのこの単純な問題であるという間違ったかしながら、もう一つの理由?

答えて

5

source codeによると、これはドキュメントのバグです。浮動小数点指定子を持たない振る舞いの正しい記述は、 "like 'g'ですが、常に小数点の後に少なくとも1桁あります"。

1

Python 2.7のドキュメントをリンクしましたが、実際にはPython 3.xを使用しました。 documentation of Python 3.xでは、動作が正しく文書化されています。

ザ・パイソン2.7ドキュメントとにかく故障している:

>>> "{0:.2}".format(14.9) 
'15.0' 

>>> "{0:.2g}".format(14.9) 
'15'