1ヶ月でWebデザイン・プログラミングスキルをオーダーメイドのカリキュラムで学べるスクール、それがWebCamp。

【Python入門】format関数で文字列の書き方

【Python入門】
Pocket

Pythonで変数を文字列に埋め込むには%演算子を使った%記法が長く用いられてきましたが、Python2.6以降はそれに代わる新しい方式が登場しました。それが「format関数」を使って変数を文字列中に埋め込む方法です。今回は「format関数」の使い方について説明します。

format関数とは?

format関数は、Pyhonで変数の文字列への埋め込みに使われます。とくに、print関数で変数を任意の文字列とともに出力したいときに使われます。format関数の基本的な構文は以下のようになります。

format関数の引数に、文字列に埋め込みたい変数を置きます。すると、{}のある部分にその変数が埋め込まれます。これにより、変数と文字列を一緒に出力することができます。例えば、計算結果を変数に代入し、文字列で単位を付けたうえで出力する、といったことが可能です。

実行結果

合計:150円

format関数の構文

format関数がどういったものかはお分かりになったと思います。ここでは、format関数のさらに詳しい構文についてみていきます。

複数の引数を与える

format関数には複数の変数を引数として渡し、文字列に埋め込むことができます。複数の変数を埋め込む場合は、どの引数をどの{}に埋め込むかを指定する必要がありますが、指定の方法はいくつかあります。代表的なものに、以下のような指定方法があります。

「インデックスで指定」は、{}に埋め込みたい変数が、format関数の何番目の引数かをインデックスとして{}内に記述して指定する方式です。

「キーワード引数で指定」は、引数に名前を付けて、その名前で指定する方法です。引数1つ1つに名前を付けないといけませんが、引数の順番が変わっても結果が変わらないというメリットがあります。「辞書で指定」はやっていることはキーワード引数で指定する方法と同じですが、辞書型を使って引数に名前を付けています。

どの方法でも複数の引数を埋め込めますが、基本的には「インデックスで指定」がシンプルで使いやすいです。

実行結果

りんご:50円 みかん:100円 合計:150円

リストやタプルを埋め込む

format関数を使えばリストやタプルといったシーケンス型の変数も埋め込むことができます。{}の中にリストやタプルの要素の添え字を書くことで、リストやタプルの要素を埋め込みます。

{0[添え字]}の左側の数字が{}に埋め込みたい変数(この場合リストやタプル)がformat関数の何番目の引数かを表していて、[添え字]がその変数の中で表示したい要素のインデックスになっています。例えば{0[1]}であれば、0番目の引数の1番目の要素を表しています。

実行結果

りんご:50円 みかん:100円 合計:150円

format関数の書式指定

format関数を使って変数を文字列に埋め込む際には、その書式を指定することができます。書式にはたくさんの種類があるのですべては紹介しきれませんが、そのうちよく使われるものを紹介します。

書式指定のやり方

書式を指定して埋め込む場合は、以下のようにします。

{}の中に:を書き、その右側に指定したい書式の型を書くことで、書式を指定することができます。

数値表現

数値には、私たちが普段使っている10進数以外にも2進数や16進数といったものがあります。10進数で埋め込む場合には特に指定しなくてもかまいませんが、それ以外の進数で埋め込みたい場合は書式を指定しましょう。

型名 説明
b 2進数で出力
d 10進数で出力
o 8進数で出力
x 16進数で出力
X 16進数で出力

実行結果

106は2進数だと1101010、8進数だと152、16進数だと6A

format関数で変数を文字列に埋め込む際には、埋め込む際の幅と表示位置を指定することもできます。

型名 説明
<任意の幅 任意の幅を取り、左詰め
>任意の幅 任意の幅を取り、右詰め
^任意の幅 任意の幅を取り、中央寄せ

幅はあらかじめスペースキーを使って入れておいてもいいですが、数字で指定するほうがパッと見てどれだけの幅を取っているかが分かりますし、ソースコードもスッキリします。

実行結果

左詰め
中央寄せ
右詰め

おわりに

いかかでしたか。
.formatではオブジェクトの__str__メソッドを呼び出して文字列型に変換しているので,型を意識せずに単に{0}などと書けば良く非常に便利です。この機会にぜひ使い方を覚えてみましょう。

投稿者:プロスタ編集部

  • このエントリーをはてなブックマークに追加

おすすめスクール

全国30校舎で展開されるヒューマンアカデミーのWeb講座は修了者数4万人超、講師とカリキュラムの満足度がどちらも9割を超えています。就職や転職に必要なレベルの実務スキルを身に付けられます。

WebCampは、一ヶ月の短期集中でWebデザイン、プログラミングスキルを習得するスクールです。学習効果の高い反転授業(自主学習でインプット、講義でアウトプット)を採用し、年間1000名を輩出しています。

この記事が気に入ったら
いいね!しよう

プロスタの最新情報をお届けします

あわせて読みたい

関連記事

イチ押しランキング

1リナックスアカデミー

リナックスアカデミー

2システムアーキテクチュアナレッジ

システムアーキテクチュアナレッジ

3WEB塾

WEB塾

メールマガジン

ページ上部へ戻る