文字列のフォーマット2
*埋め込む文字列のフォーマット*
波括弧の中にコロン(:)を置くと、置換する文字列のフォーマットをコントロールできます。
次の例は、桁揃えを行う為の指定方法です。
桁揃えを行うためには、コロンのあとに数値を指定します。
【寄せを指定して差し込む】
tmp1 = “{0:10} {1:>8}”
tmp1.format(’Spam’, 300)
↓
Spam 300
tmp1.formt(‘Ham’, 200)
↓
Ham 200
他にも、フォーマット指定の例として、パーセント表示を行うためのフォーマット指定の例を書きます。
「12708」は日本の2015年末の総人口、「6381」は就業者数(ともに単位は万人)で
就業人口比率を小数点以下2桁を表示して、パーセントで表示しています。
2番目の例では、1000の位にカンマを付けています。
【表記を指定して差し込む】
“{:.2%}”.format(6381/12708)
↓
50.21%
“{:,}”.format(10000)
↓
10,000
また、フォーマット指定部の末尾に「c」「d」のような英字を置くと、置換文字列の型を指定できます。
「c」はキャラクタとして、「d」は10進数整数として要素を埋め込みます。
【format()オプション一覧】
オプション | 説明 |
---|---|
< | 要素が左詰めして表示されるよう、スペースを補います。{:<10}のように使います。オプションの前に記号などを置いて、補う文字を指定できます。 |
> | 要素が右詰めして表示されるよう、スペースを補います。{:>10}のように使います。オプションの前に記号などを置いて、補う文字を指定できます。 |
^ | 要素が中央にくるよう、スペースを補います。{:^20}のように使います。オプションの前に記号などを置いて、補う文字を指定できます。 |
+ | 数値に符号を付けます。”{:+}”.format(10)は「+10」に、”{:+}”.format(-10)は「-10」になります。 |
- | 数値がマイナスのときだけ符号を付けます。”{:-}”.format(10)は「10」に、”{:-}”.format(-10)は「-10」になります。 |
空白 | 数値がプラスのときには空白を、マイナスのときには符号を付けます。”{: }”.format(10)は「10」に、”{: }”.format(-10)は「-10」になります。 |
c | 要素を文字列として埋め込みます。 |
d | 要素を10進整数として埋め込みます。置き換える要素が少数点を含む数値、または文字列の場合はエラーになります。 |
f | 要素を10進整数として埋め込みます。小数点を含む数値を扱えます。{:.2f}のようにすると、小数点以下の精度を指定できます。 |
x | 要素を「1f4e」のような16進数文字列として埋め込みます。英字部分は小文字になります。xの代わりに大文字のXを使うと、英字部分が大文字なります。 |
b | 要素を「0110」のような2進数文字列として埋め込みます。 |
% | 要素をパーセンテージとして埋め込みます。{:.1%}のようにすると、小数点以下の精度を指定できます。 |
, | 数値の1000の位にコンマを付けて埋め込みます。 |
*f文字列*
Python3.6では、f文字列(f-string)と呼ばれる機能が追加されます。
format()メソッドを使った機能を「f”〜”」という新しいリテラルでより手軽に表記できるようになります。
置換する要素は、変数に定義してフォーマット文字列に変数名を埋め込むようにします。
【f文字列を使った例】
name = “君”
f”まずはが{name}落ち着け”
↓
まずは君が落ち着け