NETWORK ENGINEER BLOG

Tips and Reviews for Engineers

Python の format 関数について

format 関数とは

文字列内に任意の文字列を読み込んで出力させることができます。

実行例

コード
text = 'このブログの名前は{}です。'
print(text.format('NETWORK ENGINEER BLOG'))
出力結果
このブログの名前は NETWORK ENGINEER BLOG です。

解説

基本的な使い方

コードの記述方法は、以下のとおりです。

'{}任意の文字列'.format('引数')

引数部分に任意の文字列を書いて、format 関数に渡すと、テキストとつなげてくれます。
引数部分の任意の文字列は、{}(波括弧)に入ります。

引数部分には変数も使えます。

text = 'このブログの名前は{}です。'
name = 'NETWORK ENGINEER BLOG' 
print(text.format(name))
複数の文字列を読み込む場合

テキストに複数の {} (波括弧)をつけて、引数間を ,(カンマ) で区切ります。

text = 'このブログの名前は{}です。1日{}PVが目標です。'
name = 'NETWORK ENGINEER BLOG' 
pv = 1000
print(text.format(name, pv))
文字列を読み込む場所をインデックスで指定する場合
text = '''このブログの名前は{0}です。1日{1}PVが目標です。
現在1日{2}PVです。'''
name = 'NETWORK ENGINEER BLOG' 
tpv = 1000
cpv = 100
print(text.format(name, tpv, cpv))

{} (波括弧)内のインデックス番号は、フォーマット関数の引数の位置を指し、左から 0,1,2 と数えます。

text.format(インデックス[0], インデックス[1], インデックス[2]))
文字列を読み込む場所をキーワードで指定する場合
text = '''このブログの名前は{blog_name}です。1日{target_pv}PVが目標です。
現在1日{current_pv}PVです。'''
name = 'NETWORK ENGINEER BLOG' 
tpv = 1000
cpv = 100
print(text.format(blog_name = name, target_pv = tpv, current_pv = cpv))

{} (波括弧)内のキーワードと変数をつなぎます。ソースコードがわかりやすくなるため、読み込む数が多い場合などにお勧めです。

text.format(キーワード = 変数, キーワード = 変数, キーワード = 変数))

応用的な使い方

キーワード引数でリストを読み込み、読み込んだリストのインデックス番号で表示させることができます。
この方法を使えば、リストを for 文で回して一気に表示させることが可能です。

text = 'ブログ「{blog[0]}」の1日のPVは{blog[1]}です。'
blog_list = ['NETWORK ENGINEER BLOG', 100]
print(text.format(blog = blog_list))

参考:dot blog

参考書籍

以上