Python3 – 書式設定~format

format関数

一つの数値・文字列の書式を設定する場合、format組み込み関数が使える。引数はリテラルでも変数でもよい。

formatメソッド

文字列に対するformatメソッドでも数値・文字列の書式を設定できる(書式設定の書き方は後述)。引数はリテラルでも変数でもよい。

formatメソッドは複数の数値・文字列を扱える。

位置引数として整数を指定し、繰り返して利用することが可能。

キーワード引数として文字列を指定可能。

リストを引数にするときは整数の位置引数とリスト内の引数で指定する。複数のリストを指定するときは位置引数を0、1…と対応させていく。

辞書を引数にするときは整数の位置引数とキーで指定する。キーはクォートで囲まない。

書式設定する場合は、[位置引数]:[書式設定文字列]の形式にする。位置引数を指定しない場合でも':'は必要。

書式設定文字列

formatメソッド

位置引数を省略して書式設定文字列を各場合{:[書式設定文字列]}のように':'を省略することができない。

文字列

{:[</^/>][width]}で左寄せ/中央ぞろえ/右寄せと、全体の幅widthを指定。

{:[char][</^/>][width]}で空白部分をcharの文字でパディング

整数

整数の書式は幅の値に'd'を続けて書く。

整数を2進数、8進数、16進数で表現できる。

基数を指定するとき、'#'を前置すると0b、0o、0xが前に付加される。以下の例では、同時に幅も指定している。2進数表現の場合は0bを付加すると設定幅を超えるので、そのまま表示されている。

浮動小数点

浮動小数点形式の実数の書式は、小数部の桁数だけ指定するときは".3f"のように、幅を設定するときは"10.3f"のように指定する。

固定小数点

固定小数点形式の実数の書式は、小数部の桁数だけ指定するときは".5e"のように、幅を指定するときは"15.5e"のように指定する。

符号の表示方法

正の数値に対して'+'を表示させるときは、数値書式の前に'+'をつけ、正の時にスペースを表示させるときには' 'をつける。

 

指定した幅の先頭に符号等を表示し、右寄せの数値との間をパディングする方法。

format関数

基数表示

数値の基数を指定して、10進数、2進数、8進数、16進数を表示。16進数は英文字の大文字/小文字を選択可能。

位置揃え

文字列や数値を固定幅の中で左寄せ、センタリング、右寄せ(センタリングで左右幅が異なるときは、左に1桁寄せられる)。

パディング

数値を固定幅で表示した場合のデフォルトは右寄せ。'[任意の文字]=’で空白をパディング。特にゼロで埋める場合は’=’を省略できる。

2、8、16の基数に対して固定幅で0でパディングする例。

+符号

‘+’を指定すると、正の値の時に+記号がつく。

カンマ区切り

3桁ごとのカンマ区切り指定。

固定小数点実数

固定小数点の小数部の桁数を’.[桁数]f’で指定する。

浮動小数点実数

浮動小数点の小数部の桁数を’.[桁数]e’で指定する。

実数全体の桁数

小数部の桁数ではなく全体の桁数を’.[桁数]g’で指定する。全体の桁数が整数部の桁数以上のときは、固定小数点で表示される。

 

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です