2016-06-21 4 views

答えて

0

利用デフォルトのfプレゼンテーション型insteaf(小さな変更を加えg):

'f'
固定小数点:

'{:.6f}'.format(floating_point_number) 

Format Specification Mini-Language documentationを参照してください。番号を固定小数点数で表示します。デフォルトの精度は6です。

[...]

'g'
一般的な形式。与えられた精度p> = 1の場合、これはp桁の有効数字に丸められ、その結果の大きさに応じて、固定小数点形式か科学的表記法で結果をフォーマットします。使用される場合

[...] 'g'と同様

None
は、その固定小数点表記を除き、小数点過去少なくとも一桁を有します。デフォルトの精度は、特定の値を表すのに必要な高さです。全体的な効果は、str()の出力を他の形式修飾子によって変更されたものと一致させることです。

あなたがやっているすべてのは(あなたのstr.format()テンプレート内の他の文字列を含まない)フロートをフォーマットされた場合、あなたにも、テンプレートを解析し、直接format() functionを使用することを避けることに注意してください:

format(floating_point_number, '.6f') 

デモ:

>>> fp = 1e-5 
>>> fp 
1e-05 
>>> format(fp, '.6f') 
'0.000010' 
>>> '{:.6f}'.format(fp) 
'0.000010' 
+0

はい、これは動作しますが、それはまだ出力し、メーターにキロに行くから、それは2000.000000ような答えが表示されますと言います。このような状況で、すべての0を必要とせずに2000を印刷する方法はありますか? – Bambii

+0

[余分なゼロを使わずにPythonで浮動体をフォーマットする](http://stackoverflow.com/q/2440692)を参照してください。 'format()'を使用すると 'format(fp、 '.6f')となりますrstrip( '0')。rstrip( '。')' –

関連する問題