2016-10-10 11 views
3

で{} .formatを使用している場合()メソッドに複数の引数を使用してください:明らかには、どのように私はPythonで、テーブルは次のように印刷したいのPython

、私が使用したいです。 format()メソッドを使用していますが、私はこのような長い浮動小数点数を持っています:1464.1000000000001浮動小数点数を丸めて、次のようにする必要があります。1464.10(常に2桁の小数点以下はゼロです。 round()関数)。

"{0:.2f}".format("1464.1000000000001")を使用して浮動小数点数を丸めることはできますが、素敵なテーブルには印刷されません。

私は"{0:>15}.format("1464.1000000000001")を実行して素敵なテーブルに入れることができますが、丸められません。

両方を行う方法はありますか? "{0:>15,.2f}.format("1464.1000000000001")のようなもの?

+2

を: '。 "{0:> 15.2f}" 形式(1464.1000000000001)は'あなたが望むものと考えられます。 – Evert

+0

'format()の中で' round() 'を使用できませんか? –

+0

https://pyformat.info/([標準のPythonのドキュメント](https://docs.pythonの隣にあります。 org/3/library/string.html#書式指定 - ミニ言語))。 – Evert

答えて

5

あなただけのカンマを削除(フロート番号ではなく、文字列を渡す)、ほとんどがあった:

"{0:>15.2f}".format(1464.1000000000001) 

Format Specification Mini-Language sectionを参照してください:

速報
format_spec ::= [[fill]align][sign][#][0][width][,][.precision][type] 
fill  ::= <any character> 
align  ::= "<" | ">" | "=" | "^" 
sign  ::= "+" | "-" | " " 
width  ::= integer 
precision ::= integer 
type  ::= "b" | "c" | "d" | "e" | "E" | "f" | "F" | "g" | "G" | "n" | "o" | "s" | "x" | "X" | "%" 

上記のフォーマットを下にします:

fill: <empty> 
align: < # left 
sign: <not specified> 
width: 15 
precision: 2 
type: `f` 

デモ:>を省略することができるので、数字のために、デフォルトの配置は、右にあることを

>>> "{0:>15.2f}".format(1464.1000000000001) 
'  1464.10' 

注意。

+0

うわー、ありがとう!私はちょうど.format()の2つの別々の反復を行うことで自分自身で問題を回避しました。そして恐ろしいことですが、これははるかにエレガントです。私はこれについてGoogle上で何かを見つけることができなかったので、非常にありがとう! –

3
"{0:15.2f}".format(1464.1000000000001) 

私はいつもこのようなもののために便利なこのサイトを見つける:ほとんどそこ

https://pyformat.info/

+0

は不要です。デフォルトは右です。 –

関連する問題